在程序启动时运行以下代码:

/// <summary>
/// 向注册表注册开机自启
/// Win10需要使用系统管理员权限运行VS才能调试,同理启动这个程序也需要系统管理员权限运行
/// 或者第一次启动时,右键以管理员权限启动程序
/// 这个只需要成功注册一次,后面就可以开机自动启动此程序了。
/// </summary>
public static void SetExecSelfStarting()
{
    try
    {
        var execPath = Application.ExecutablePath; //当前程序路径
        using (var rk = Registry.LocalMachine)
        {
            var resigetryPath = Environment.Is64BitOperatingSystem //判断是否为64位系统
                ? "SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Run"
                : "Software\\Microsoft\\Windows\\CurrentVersion\\Run";
            using (var rk2 = rk.CreateSubKey(resigetryPath))
            {
                if (rk2 == null)
                {
                    return;
                }
                var value = rk2.GetValue("MyAppName") ?? string.Empty;
                if (execPath.Equals(value.ToString(), StringComparison.OrdinalIgnoreCase))
                {
                    return;
                }
                rk2.SetValue("MyAppName", execPath);
            }
        }
    }
    catch (Exception ex)
    {
        throw ex;
    }
}

 

版权声明:本文为pilgrim原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/pilgrim/p/13358827.html