在当前环境中存在一个策略,只允许%system32%中的文件由系统和pipe理员拥有。 在转换这些权限后,cmd.exe无法执行。 添加当前login的用户可以解决此问题,但是添加包含用户的组myGroup失败。 命令提示符告诉我,我没有权限,这似乎很奇怪。 我错过了一个registry编辑,或者有什么我应该在这里寻找?
在Win7下(应该类似于Vista)
运行gpedit.msc启动组策略编辑器
导航到:用户configuration – >pipe理模板 – >系统
检查以下设置:“禁止访问命令提示符”
首先 – 我不认为这是UAC。 uac只会阻止你以pipe理员身份启动cmd.exe。 但请尝试执行cmd作为pipe理员。 这应该工作。
我会切换到另一个cmd:
并将其放在%ProgramFiles%
将组添加到cmd.exe应该像添加用户一样工作。 我不认为一个gpo修复你的问题。 只有当你不修改%system32%中的所有文件时。
您已经向cmd.exe添加了一个新组,但是为什么? 你说你只是修改了所有者 – 但顺便说一下 – 只能有一个所有者…我想你修改的访问权限只有系统和pipe理员。 也许你的政策覆盖你的改变?
另一个问题是 – 这是否有道理? 为什么我会试图收紧已经安全的权利? 为什么我会允许没有pipe理员权限的特定文件?
编辑: cmd.exe所需的访问权限
在我的系统上工作…
EDIT2
请尝试运行cmd.exe并分析Process Monitor失败的情况:
http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx