夸克之书

  • 首页
  • 科普
  • 笔记
  • .NET/C#
  • 物联网
  • 算法
  • Linux
  • 树莓派
夸克之内,别有洞天
  1. 首页
  2. .NET/C#
  3. 正文

Winform设置程序开机启动

2018-09-08 7190点热度 1人点赞 0条评论

在编写Winform应用程序时,经常要用到需要自启动的情况,所以收集了一段可以用于自启动的方法。

    /// <summary> 
    /// 开机启动项 
    /// </summary> 
    /// <param name="Started">是否启动</param> 
    /// <param name="name">启动值的名称</param> 
    /// <param name="path">启动程序的路径,推荐Application.ExecutablePath</param> 
    private static void StartWithSystem(bool Started, string name, string path)
    {
        try
        {
            RegistryKey HKLM = Registry.LocalMachine;
            RegistryKey Run = HKLM.CreateSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun");
            if (Started == true)
            {
                try
                {
                    Run.SetValue(name, path);
                    HKLM.Close();
                }
                catch (Exception Err)
                {
                    MessageBox.Show(Err.Message.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                try
                {
                    Run.DeleteValue(name);
                    HKLM.Close();
                }
                catch (Exception)
                {
                    // 
                }
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show("错误:" + ex.Message, "警告", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }

于此同时,在设置自启动后,常常需要读取配置文件,之前使用
System.Environment.CurrentDirectory 踩了一个坑,自启动后无法获取配置文件,但是用下面的方法获取配置文件可以避免自启动后找不到程序目录下面的配置文件。

AppDomain.CurrentDomain.BaseDirectory
本作品采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2020-12-13

afirefish

这个人很懒,什么都没留下

打赏 点赞
< 上一篇
下一篇 >

文章评论

您需要 登录 之后才可以评论
放松一下
https://www.quarkbook.com/wp-content/uploads/2021/05/凤凰传奇-海底(Live).flac
分类
  • .NET/C#
  • Linux
  • 树莓派
  • 物联网
  • 科普
  • 笔记
  • 算法
  • 默认
最新 热点 随机
最新 热点 随机
Visual Studio 2026(VS2026) 密钥/激活码 在代码中判断龙芯新旧世界平台 Windows获取固定后缀的IPv6地址 目前为止,你可能找不到第二台支持志强的1L小主机(P350 Tiny+W-1350+ECC+双NVME+PCIE扩展)!!! iKuai(爱快)实现成都移动IPTV IPoE拨号 Linux EXT4分区误删除后数据恢复
将对象转化为Get请求字符串 Windows获取固定后缀的IPv6地址 PVE重启后LVM Thin数据丢失,错误:Volume group "****" has insufficient free space (128 extents): 4048 required. IIS 当前标识(***)没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”的写访问权限。 OpenWrt配置SmartDNS 【算法】具有层级关系的城市,例如"中国 广州","中国 浙江 杭州" 一个 List 最后应该是转成树状图输出
最近评论
[茁]研小艾 发布于 21 小时前(07月31日) b战那个是你么? 我向你发了私信,你博客怎么一点ViewFaceCore相关的东西都没有。 Vie...
afirefish 发布于 3 周前(07月11日) 是的,不用保持MAC地址一致
Devil丶飘雪 发布于 2 个月前(06月15日) 跟着楼主的教程,已经实现在电脑上播放电视直播,但是有个问题,我是在光猫上设置了两个IPTV口,其中一...
xD 发布于 1 年前(07月17日) 牛逼
Eagle 发布于 2 年前(10月21日) 参考博主教程成功搞定了成都移动IPTV组播转单播,电脑、手机都可以播放了。但目前有个问题,原IPTV...
书签
  • 打赏
  • 毒鸡汤
  • 米店
  • 金鱼直播间

COPYRIGHT © 2023 quarkbook.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

蜀ICP备15036129号-9

登录
注册|忘记密码?