似乎有很多线程询问如何检查prorgam是否以管理员身份运行或如何设置程序以在Windows中以管理员身份运行,但我的问题是如何检查程序是否配置为以管理员身份运行它实际上在运行?我需要能够以自动方式检查这一点。
我知道我可以直接单击一个exe并检查程序是否配置为以管理员身份运行,但我需要一种方法来自动检查,因为我正在运行的应用程序需要知道某个.exe是否配置为以管理与否,并根据该属性做出决定。
UI中有两个位置用于判断可执行文件或快捷方式是否配置为以管理员身份运行。打开文件/快捷方式的属性,这两个位置是“高级”按钮和“兼容性”选项卡。在这些位置进行的设置不同,但具有相同的效果。兼容性设置将存储在注册表HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers中。我相信,高级标志设置为绑定到快捷方式本身的属性。
—
music2myear
该注册表项是完美的!谢谢!appcompatflags / layers的HKLM版本用于为所有用户设置的prorgams属性,HKCU版本仅适用于当前用户。我永远不会猜到这一点。
—
保罗雷斯曼
我现在将其转换为答案,但我想测试一下,看看你是否可以在命令中读取快捷方式的属性(对于Advanced> Run as Admin标志)来改进它。
—
music2myear