C#设置程序开机启动方法链接
但是当程序默认需要管理员权限启动时,64位程序通过注册表设置开机启动的方法无效了,32位的程序还是有效的,

这是几种解决方法:

1.将启动参数写入到32位注册表里面去
在64位系统下我们64位的程序访问此 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
注册表路径,是可以正确访问的,32位程序访问此注册表路径时,默认会被系统自动映射到
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run这个路径里面去。

因为32位需要管理员权限的程序通过注册表设置开机启动可以正常启动,所以我尝试将64位程序也将启动参数写入到HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run节点里面去,重启软件时,发现可以正常启动了,不知道这是微软的bug还是什么。

2.通过其他程序启动自己
再写一个程序比如luancher.exe,将此程序设置为开机启动,但是此程序不要添加管理员权限,启动此程序时,此程序通过“runs”参数启动需要管理员权限的程序,这样就可以解决问题。

                ProcessStartInfo processStartInfo = new ProcessStartInfo(){FileName = 路径,CreateNoWindow = false,ErrorDialog = false,UseShellExecute = true,Verb = "runas",};Process process = Process.Start(processStartInfo);

3.计划任务启动程序
如果程序本身需要管理员权限启动,那么比较推荐使用使用这一种方式,不需要管理员权限的比较推荐其他方式,因为使用计划任务启动程序时,windows 不会弹出讨厌的“允许某某程序对你的电脑进行修改吗的窗口”,下面是代码实现,注意需要安装nuget包TaskScheduler,转自
https://blog.csdn.net/weixin_34384557/article/details/87536874。

[Conditional("RELEASE")]
private void RegisterTask()
{const string TaskName = "App";var logonUser = System.Security.Principal.WindowsIdentity.GetCurrent().Name;const string taskDescription = "每当用户登录后自动运行App";const string deamonFileName = @"C:\Program Files (x86)\App\App.exe";using (var taskService = new TaskService()){var tasks = taskService.RootFolder.GetTasks(new System.Text.RegularExpressions.Regex(TaskName));foreach (var t in tasks){taskService.RootFolder.DeleteTask(t.Name);}var task = taskService.NewTask();task.RegistrationInfo.Description = taskDescription;task.Triggers.Add(new LogonTrigger { UserId = logonUser });task.Principal.RunLevel = TaskRunLevel.Highest;task.Actions.Add(new ExecAction(deamonFileName, Program.Environment));taskService.RootFolder.RegisterTaskDefinition(TaskName, task);}
}

上面是我以前参考别人的例子拿过来的,任务计划启动如果需要的可以参考我这篇博文里面有c++和c#的例子可以直接拿来使用。链接

WIN10 以管理员权限设置开机启动的问题相关推荐

  1. Rainmeter后续——WIN10任务栏透明以及设置开机启动应用

    第二天帮室友们都做了桌面,成品效果如下: 前面的背景和模板使用方法和上一个帖子如出一辙,但要注意的是 win10的任务栏可以直接设为完全透明,体验效果更好. 方法一: win10开始菜单中微软应用商店 ...

  2. win10系统多台电脑无界共享键鼠软件MouseWithoutBorders设置开机启动方法步骤

    描述:win10系统多台电脑无界共享键鼠软件MouseWithoutBorders设置开机启动方法步骤 步骤: win+r打开运行 输入services.msc打开 找到MouseWithoutBor ...

  3. 【Windows】Win10设置开机启动项

    Win10设置开机启动项 可以打开文件夹 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 或 C:\Users\VULCAN( ...

  4. win10服务器系统如何设置开机自启动,win10怎么设置开机启动项_win10设置开机启动项的方法...

    众所周知,当win10电脑启动项过多就会出现开机时间较长的现象,想让电脑开机变得很快,可以重新设置一下开机启动项.如果不懂从何下手的用户可以阅读下文教程,现在高手分享在win10设置开机启动项的方法. ...

  5. win10怎么设置开机启动项目_开机启动项怎么设置呢?禁用自启动程序

    大家好,今天分享一篇来源小白一键重装网(xiaobaixitong.com)关于解答:开机启动项怎么设置呢? 每日壁纸 · 长按保存 开机启动项怎么设置呢?电脑开机速度变慢了很可能是开机启动项太多导致 ...

  6. win10设置开机启动项_如何进行win7开机启动项设置

    开机启动项是开机的时候系统会开启的程序.有时电脑开机启动会自动加载很多程序,严重拖慢电脑的开机速度.我们该如何设置开机启动项来取消这些加载的程序呢?下面小编解析如何进行win7开机启动项设置吧. wi ...

  7. C#设置开机启动时报错,提示“对注册表项“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run访问被拒绝”

    参考文章 C#如何设置开机启动 C#设置开机启动时报错,提示"对注册表项"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current ...

  8. Windows 10和Linux脚本启动jar包服务器,并设置开机启动

    Windows 10和Linux脚本启动jar包服务器,并设置开机启动 现在好多Java服务和应用都是用jar启动,jar打包成的里面会直接带有tomcat,所以可以直接启动,但是如何通过脚本启动并且 ...

  9. ubuntu 设置开机执行脚本_ubuntu-18.04 设置开机启动脚本

    ubuntu-18.04 设置开机启动脚本 参阅下列链接 ubuntu-18.04不能像ubuntu14一样通过编辑rc.local来设置开机启动脚本,通过下列简单设置后,可以使rc.local重新发 ...

最新文章

  1. AndroidUI 视图动画-旋转动画效果 (RotateAnimation)
  2. 27、oracle(三)
  3. DM368开发 --IPNC 设置过程
  4. 三维重建6:绑架问题/SensorFusion/IMU+CV-小尺度SLAM
  5. R语言blotter包及相关工具
  6. 开火锅店的明星们,什么时候才能不道歉?
  7. 谈软件测试---一年测试工作总结
  8. 【互联网周刊】2022年第6期摘录
  9. 微信公众号迁移公证书好办吗,真实经历!公众平台迁移见证需要什么材料,流程及费用详解
  10. DAS,NAS,SAN 三种存储技术比较
  11. Centos 7 安装Redis
  12. vue2路由手动创建二级路由路由传参路由守卫打包上线
  13. Power BI介绍
  14. http://wenku.baidu.com/view/981f99d376eeaeaad1f330e7.html
  15. java ftp上传失败_使用java进行ftp文件上传出现425错误
  16. 北大2021年计算机分数分数线,北京大学2021年考研复试基本分数线已发布
  17. 2019.06.28(day01)_java大数据课程体系
  18. 前端-----之-----轮播
  19. Idea多次启动同一个服务
  20. ios备忘录下载安卓版_安利3款手机实用软件,安卓和ios都有份

热门文章

  1. HIR夏季挑战赛作品紧急优化
  2. Android实现简单账号密码登录
  3. NO pyvenv.cfg file解决办法
  4. matlab仿真单关节机器人,用MATLAB玩转机器人--第六章 用MATLAB玩转单关节机器人
  5. 使用PHPExcel生成Excel文件和图表
  6. 955 互联网公司白名单来了!这些公司月薪20k,没有996!福利榜国内大厂只有这家!
  7. windows ce 专题
  8. C#:在一个窗体类中改变另一个窗体控件的属性
  9. matlab中m_map工具箱绘制大圆航线
  10. 全网最细MySQL数据库下载及安装教程