C#设置开机启动项、取消开机启动项

时间:2023-03-08 21:06:35
C#设置开机启动项、取消开机启动项
如果想你写的程序随系统开机一起启动的话,那么你可以照下面这个方法来做。 

RunWhenStart(false, Application.ProductName, Application.StartupPath + @\"\\MUS.exe\");
/// <summary>
/// 开机启动项
/// </summary>
/// <param name=\"Started\">是否启动</param>
/// <param name=\"name\">启动值的名称</param>
/// <param name=\"path\">启动程序的路径</param>
public static void RunWhenStart(bool Started, string name, string path)
{
RegistryKey HKLM = Registry.LocalMachine;
RegistryKey Run = HKLM.CreateSubKey(@\"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\");
if (Started == true)
{
try
{
Run.SetValue(name, path);
HKLM.Close();
}
catch (Exception Err)
{
MessageBox.Show(Err.Message.ToString(), \"MUS\", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
} [Page]
else
{
try
{
Run.DeleteValue(name);
HKLM.Close();
}
catch (Exception)
{
//
}
}
}
/// <summary>
/// 开机启动项
/// </summary>
/// <param name=\"Started\">是否启动</param>
/// <param name=\"name\">启动值的名称</param>
/// <param name=\"path\">启动程序的路径</param>
public static void RunWhenStart(bool Started, string name, string path)
{
  RegistryKey HKLM = Registry.LocalMachine;
  RegistryKey Run = HKLM.CreateSubKey(@\"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\");
  if (Started == true)
  {
    try
    {
      Run.SetValue(name, path);
      HKLM.Close();
    }
    catch (Exception Err)
    {
      MessageBox.Show(Err.Message.ToString(), \"MUS\", MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
  } [Page]
  else
  {
    try
    {
      Run.DeleteValue(name);
      HKLM.Close();
    }
    catch (Exception)
    {
      //
    }
  }
}