如何用C#添加开机启动项?

之前看了一些别人的问问,感觉答案并不满意。调用什么类,引用什么空间麻烦写一下,比如说想添加“E:\ABC.exe”文件开机自动运行怎么写?

  C# 可以通过读写注册表来设置开机启动,具体代码如下:

/// <summary>         
/// å¼€æœºå¯åŠ¨é¡¹        
/// </summary>       
/// <param name="Started">是否启动</param>         
/// <param name="name">启动值的名称</param>          
/// <param name="path">启动程序的路径</param>         
public 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//没有权限会异常            
        { }
    }
    else
    {
        try
        {
            Run.DeleteValue(name);
            HKLM.Close();
        }
        catch//没有权限会异常 
        { }
    }
}
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-11-11
通过添加到注册表设置开机启动。
1. 命名空间
using Microsoft.Win32;
2.具体代码
RegistryKey HKCU = Registry.CurrentUser;
RegistryKey Run = HKCU.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);
try
{
Run.SetValue("ABC", @"E:\ABC.exe");
}
catch
{

}
HKCU.Close();
3. 注意,360会弹出窗口询问是否设置开机启动,要点击“允许”才可以成功设置开机启动。本回答被提问者采纳
第2个回答  2012-06-03
如果对方系统是win 7或vista 你就把你的可执行文件复制到C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs目录下就行,开机系统会自动加载启动
如果对方系统是win xp 你就把你的可执行文件复到
"C:\DocumentsandSettings\Administrator\“开始”菜单\程序\启动" 目录下就行,开机系统会自动加载启动
第3个回答  2012-06-03
简单办法就是 添加一个任务计划,让系统去自动运行“E:\ABC.exe这个文件

参考资料:http://wenku.baidu.com/view/8253e662783e0912a2162a85.html

第4个回答  2018-07-30
C#/WPF程序实现软件开机自动启动的两种常用方法 - CSDN博客 https://blog.csdn.net/liyu3519/article/details/81257839

如何用C#添加开机启动项?
C# 可以通过读写注册表来设置开机启动,具体代码如下:\/\/\/ \/\/\/ 开机启动项 \/\/\/ \/\/\/ 是否启动 \/\/\/ 启动值的名称 \/\/\/ 启动程序的路径 public void RunWhenStart(bool Started, string name, string path){ RegistryKey HKLM = Registry.LocalMachine; RegistryKey Run...

C#做的软件如何在代码中设置开机启动
Userinit注册键 位置:HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\WindowsNT\\CurrentVersion \\Winlogon\\Userinit。这里也能够使系统启动时自动初始化程序。通常该注册键下面有一个userinit.exe,如图,但这个键允许指定用逗号分隔的多个程序,例如“userinit.exe,OSA.exe”(不含引号)。Explorer\\Run注册键 和load、...

C#怎么添加开机启动项
\/\/\/ 将程序的开机启动写入注册表 \/\/\/ private void register(){ string starupPath = Application.ExecutablePath;\/\/class Micosoft.Win32.RegistryKey. 表示Window注册表中项级节点,此类是注册表装.RegistryKey loca = Registry.LocalMachine;RegistryKey run = loca.CreateSubKey(@"SOFTWARE\\Microsoft\\...

请教:如何用C#编一个电脑开机自动运行的程序
1.复制程序exe到开始菜单的启动栏 1234File.Copy(@"D:\\我的项目\\启动程序.exe", @"C: \\Users\\Administrator\\AppData\\Roaming\\Microsoft \\Windows\\Start Menu\\Programs\\Startup" + @"\\启动程序.exe");2.修改注册表启动项。1234567string path = Application.ExecutablePath;RegistryKey rk =...

用C#创建软件,怎样能使它成为开机启动项,并且启动后的界面在屏幕的右...
把软件的左键按住,托到开始,所有程序,启动下 也是这样的.开机后,程序就会自动启动,但要控制在哪个位置是无法做到的

c#Winform程序,如何在 win7\/8 64位电脑上设置开机自动启动
\/\/\/ 设置自动启动 \/\/\/ \/\/\/ 文件名 \/\/\/ 是否自动启动 private void SetAutoRun(string sFileName, bool blIsAutoRun){ RegistryKey reg = null;try { if (!System.IO.File.Exists(sFileName))return;String name = sFileName.Substring(sFileName.LastIndexOf(@"\\") + 1);reg = Regist...

C#怎么让自动启动直接最小化,而手动启动则不是最小化
补:你就在括号里面加string[] args这句,然后你在主函数里面MessageBox.Show(args[0]);这样一来如果直接运行肯定会出错,你把别的文件拖到编译的exe上去放开,就会显示被拖程序的路径,因为这个操作实际上用命令行解释就是(假如你的文件是D:\\a.txt:mype.exe D:\\a.txt 启动项那里应该可以使用参数,写...

...一串能在开机进入系统时播放音频的代码放到启动项中
首先在控制面板里打开声音--浏览-- 找到相关路径的文件(或者把文件拷贝至此路径),文件格式必须是wav格式的,关机相同

很可怕的一个C#2008小程序添加到了360开机启动项里,现在电脑开机后鼠标...
进安全模式可以吗? 如果可以,在任务管理器中把开机启动项去掉

c# 任务管理器开机启动项有禁用和开启两种状态,如何防止禁用,使程序一 ...
这个是系统级的,禁用了你就不能开启了,不然如果是病毒程序就没法控制了

相似回答