如何从脚本配置兼容模式?

时间:2018-03-25 08:44:43

标签: permissions registry compatibility

作为部署脚本的一部分,我需要为某些应用添加标记“以管理员身份运行”。我发现它在注册表中的配置,但我发现这还不够。例如,我在procexp64.exe中有C:\;我在C:\procexp64.exe的注册表中添加了数据~ RUNASADMIN的字符串值HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers。在此之后,我在exe属性中看到“以管理员身份运行”复选框,但实际上应用程序未以管理员身份运行!

enter image description here

好的,我删除了我的注册表修改并手动配置它如图片所示。注册表值在同一位置显示相同的数据。我跟踪procmon修改,发现dllhost做了它 - 它只添加了一个注册表修改,并且不修改文件系统上的任何内容。 dllhosts的修改有效,但我的修改 - 不是。我做错了什么? 似乎还不足以添加reg值...
注册表虚拟化已禁用,用户具有管理员权限。赢得Srv 2012 R2。

1 个答案:

答案 0 :(得分:2)

可能重复:How to set "Run this program as an administrator" programmatically

确保您选择HKLM或HKCU

你可以尝试

reg.exe Add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\procexp64.exe" /d "RUNASADMIN" /f

reg.exe Add "HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\procexp64.exe" /d "RUNASADMIN" /f