检查 .exe 文件的权限级别

Check Privilege Level for .exe files

我有一个应用程序要部署在 ~300 Windows 7 台计算机上。 我没有安装此应用程序的设置,只需要在程序文件目录中 copy/paste。

在二进制文件目录中,我有 9 个可执行文件。 对于每个 .exe,我需要为所有用户选中复选框:"Run this program as an administrator"。我有本地管理员凭据。

我的需要是用批处理或 VBScript 或 Regedit 或任何语言(Python、C/C++、Java、其他...)但不是在 AutoIt 中/ AutoHotkey.

你能帮我找到解决办法吗?

是的,可以通过设置一个简单的注册表项来实现。在这种情况下,使用 REG.exeADD 选项通过批处理文件设置此注册表值。

命令:REG ADD [ROOT\]RegKey /v ValueName [/t DataType] [/S Separator] [/d Data] [/f]

仅限当前用户:

REG ADD "HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v << 'FULL (DOUBLE QUOTED) PATH TO YOUR APPLICATION'S EXECUTABLE FILE >> /d "RUNASADMIN"

对于所有用户:

REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v << 'FULL (DOUBLE QUOTED) PATH TO YOUR APPLICATION'S EXECUTABLE FILE >> /d "RUNASADMIN"

示例(适用于所有用户):

REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\My Program\MyProgram.exe" /d "RUNASADMIN"

如果你想为所有用户设置这个,你应该运行你的批处理文件具有管理员权限。