学习网上他人的方法,自己总结。可用,记录下来:
/// <summary>
/// 开机自动启动程序
/// 写如注册列表
/// </summary>
/// <param name="started">设置开机启动,或取消开机启动</param>
/// <param name="exeName">注册表中程序的名称</param>
/// <param name="path">开机启动的程序路径</param>
/// <returns>开启或停用是否成功</returns>
public static bool porcessStart(bool started, string exeName, string path)
{
RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
if (key == null)
key = Registry.LocalMachine.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");
// 检查程序状态
if(started)
try
{
key.SetValue(exeName, path);
key.Close();
return true;
}
catch (System.Exception)
{
return false;
}
else
try
{
key.DeleteValue(exeName);
key.Close();
return true;
}
catch (System.Exception)
{
return false;
}
}