zoukankan      html  css  js  c++  java
  • WPF 开机注册自启动及设置确保以管理员运行

        最近用到开机自启动设置,在此记录下设置自启动的步骤,如果对各位有需要可以借阅,之前设置管理权限解释在创建解决方案是将VS以管理员方式打开,这种方法可以实现,但是个人还是偏向与本文的方式,不多说啥了,下面我们来看看具体的操作步骤:

       1.设置管理员身份运行:

          在解决方案下右击   -----  打开属性 --------选择安全性 -------勾选 启用ClickOnce安全设置(N)及这是完全可信的应用程序(L)

         这时打开工程下的 app.manifest

         将  <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />设置好,如下图

        在进入在解决方案下右击   -----  打开属性 --------选择安全性 -------将勾选 的启用ClickOnce安全设置(N)取消选中,然后运行程序,管理员身份就设置完成了。

       2.添加自启动写入注册表(将此段程序加载时运行起来,就可以写入注册表开启开机自启动)

       

      #region 开机自启动写入注册表
    
            private void RunAtStart()
            {
                var starupPath = GetType().Assembly.Location;
                try
                {
                    var fileName = starupPath;
                    var shortFileName = fileName.Substring(fileName.LastIndexOf('\') + 1);
                    //打开子键节点
                    var myReg = Registry.LocalMachine.OpenSubKey(
                        "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", RegistryKeyPermissionCheck.ReadWriteSubTree,
                        RegistryRights.FullControl);
                    if (myReg == null)
                    {
                        //如果子键节点不存在,则创建之
                        myReg = Registry.LocalMachine.CreateSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
                    }
                    if (myReg != null && myReg.GetValue(shortFileName) != null)
                    {
                        //在注册表中设置自启动程序
                        myReg.DeleteValue(shortFileName);
                        myReg.SetValue(shortFileName, fileName);
                        LogHelper.WriteLog(typeof(MainWindow), "设置自启动程序操作成功");
                    }
                    else if (myReg != null && myReg.GetValue(shortFileName) == null)
                    {
                        myReg.SetValue(shortFileName, fileName);
                        LogHelper.WriteLog(typeof(MainWindow), "设置自启动程序操作成功");
                    }
                }
                catch
                {
                   LogHelper.WriteLog(typeof(MainWindow),"写注册表操作发生错误");
                }
            }
    
            #endregion
    

     至此所有的步骤完成,可以开机测试下。

        

  • 相关阅读:
    中文词频统计
    【大数据应用期末总评】Hadoop综合大作业
    【大数据作业十一】分布式并行计算MapReduce
    【大数据作业十】分布式文件系统HDFS 练习
    【大数据作业九】安装关系型数据库MySQL 安装大数据处理框架Hadoop
    【爬虫综合大作业】腾讯视频——大家到底都在看什么?!
    【大数据作业七】爬取全部的校园新闻
    【大数据作业六】获取一篇新闻的全部信息
    【大数据作业五】理解爬虫原理
    【大数据作业四】中文词频统计
  • 原文地址:https://www.cnblogs.com/TechnologyDictionary/p/10788506.html
Copyright © 2011-2022 走看看