下面我将详细讲解一下如何用C#代码设置开机启动,并提供两个示例。
1. 创建注册表键值
我们可以通过创建注册表键值来实现开机启动。具体步骤如下:
- 引入Microsoft.Win32命名空间
using Microsoft.Win32;
- 创建一个RegistryKey对象,指定键值的位置。键值的位置在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run下,因此代码如下:
RegistryKey key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
- 添加键值,其中第一个参数为名称,可以自定义;第二个参数为程序的路径(包括.exe文件)。
key.SetValue("MyProgram", "C:\\MyProgram\\MyProgram.exe");
2. 删除注册表键值
如果需要取消程序的开机启动,我们可以通过删除注册表键值来实现。具体步骤如下:
- 引入Microsoft.Win32命名空间
using Microsoft.Win32;
- 创建一个RegistryKey对象,指定键值的位置。键值的位置在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run下,因此代码如下:
RegistryKey key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
- 删除键值,其中参数为名称。
key.DeleteValue("MyProgram", false);
示例1:设置记事本开机自启动
下面我们提供一个示例,演示如何设置计算机开机时自动打开记事本。
代码如下:
using Microsoft.Win32;
namespace SetStartup
{
class Program
{
static void Main(string[] args)
{
RegistryKey key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
key.SetValue("MyNotepad", "notepad.exe");
}
}
}
其中,"MyNotepad"可以替换为自定义的键值名称。
示例2:设置自己的程序开机自启动
下面我们提供另一个示例,演示如何设置自己的程序在计算机开机时自动启动。
代码如下:
using Microsoft.Win32;
namespace SetStartup
{
class Program
{
static void Main(string[] args)
{
RegistryKey key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
key.SetValue("MyProgram", "C:\\MyProgram\\MyProgram.exe");
}
}
}
其中,"MyProgram"可以替换为自定义的键值名称,"C:\MyProgram\MyProgram.exe"需要替换为自己程序的实际路径。
以上就是使用C#代码设置开机启动的攻略,同时提供了两个示例。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#代码设置开机启动示例 - Python技术站