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)
{
//
}
}
}