C#客户端(WinForm)开机自动启动实现

摘要:
//////修改注册表中程序的键值////true:启动,false:启动而不启动privatevoidAutoStart(boolisAuto=true,boolshowinfo=true){try{if(isAuto=true){RegistryKeyR_local=registry.Cur
/// <summary>  
        ///修改程序在注册表中的键值  
        /// </summary>  
        /// <param name="isAuto">true:开机启动,false:不开机自启</param> 
        private void AutoStart(bool isAuto = true, bool showinfo = true)
        {
            try
            {
                if (isAuto == true)
                {
                    RegistryKey R_local = Registry.CurrentUser;//RegistryKey R_local = Registry.CurrentUser;
                    RegistryKey R_run = R_local.CreateSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun");
                    R_run.SetValue("应用名称", Application.ExecutablePath);
                    R_run.Close();
                    R_local.Close();
                }
                else
                {
                    RegistryKey R_local = Registry.CurrentUser;//RegistryKey R_local = Registry.CurrentUser;
                    RegistryKey R_run = R_local.CreateSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun");
                    R_run.DeleteValue("应用名称", false);
                    R_run.Close();
                    R_local.Close();
                }
            }
            catch(Exception)
            {
                if(showinfo)
                    MessageBox.Show("您需要管理员权限修改", "提示");
            }
        }

注:该程序的启动项设置到HKEY_Current_User 下,推荐。如果想改在HKEY_LOCAL_MACHINE,只需将CurrentUser改为LocalMachine,即

//添加到 当前登陆用户的 注册表启动项
RegistryKey RKey = Registry.CurrentUser.CreateSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun");
RKey.SetValue("AppName", @"C:AppName.exe");
//添加到 所有用户的 注册表启动项
RegistryKey RKey = Registry.LocalMachine.CreateSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun");
RKey.SetValue("AppName", @"C:AppName.exe");

免责声明:文章转载自《C#客户端(WinForm)开机自动启动实现》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇几种NFS系统对比,选型理由Dirsearch 快速开始下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

微服务高可用方案

微服务高可用方案 一、微服务的高可用 在注册中心、配置中心高可用方案之前,了解一下注册中心的工作原理,下面分为两个部分来解释,一是注册中心和各个微服务的注册表的获取与同步,二是注册中心如何去维护注册表。 1.1、注册表的获取与同步 Eureka Server和Eureka Client之间的关系,通过注册表来维护,而注册表的通过Eureka Server集...

注册表比较工具

RegShot 是一种注册表比较工具,它通过两次抓取注册表而快速地比较出答案。它还可以将您的注册表以纯文本方式记录下来,便于浏览;还可以监察 Win.ini,System.ini 中的键值;还可以监察您 Windows 目录和 System 目录中文件的变化,为您手工卸载某些软件创造条件。 1.下载地址 https://sourceforge.net/pr...

c# 扩展方法奇思妙用高级篇六:WinForm 控件选择器

在Web开发中,jQuery提供了功能异常强大的$选择器来帮助我们获取页面上的对象。但在WinForm中,.Net似乎没有这样一个使用起来比较方便的选择器。好在我们有扩展方法,可以很方便的打造一个。  我们先看几个类图,深入认识一下我们常用的WinForm控件:   图1  ScrollableControl类图 图2  ButtonBase类图 图3 ...

WinForm控件之【TreeView】

基本介绍 标签项的分层集合控件(树形控件),节点可加载图片显示。 常设置属性 CheckBoxes:树节点旁是否显示复选框; FullRowSelect:指示突出显示是否跨越树视图控件的整个宽度; Indent:每个子树节点级别的缩进距离; ItemHeight:树视图控件中每个树节点的高度; LabelEdit:指示是否可以编辑树节点的标签文本; Scr...

WINCE快捷方式详解(转载)

1.WINCE快捷方式结构 WINCE的快捷方式和WIN2K,XP的不同,只是一个后缀名为.LNK的文本文件.其格式如下: 数字#路径 比如,有个快捷方式写法如下: 23#\Windows\ToolViewer.exe 指的是指向WINDOWS文件夹下的Toolviewer.exe可执行文件.数字究竟代表的是什么意思,我也不太清楚;有一说法是#后的ACS...

【WinForm程序】注册热键快捷键切换

重写DefWndProc事件 #region Window 消息捕获 const int WM_COPYDATA = 0x004A; public structCOPYDATASTRUCT { publicIntPtr dwData; public i...