Closed. This question is off-topic。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是用于堆栈溢出的on-topic。
已关闭8年。
Improve this question
在我的WinForms应用程序的NSIS设置脚本中,我使用以下CACLS命令为Users组授予子文件夹的完整权限:
因此,实际上执行的CACLS命令类似于:
然后,当我在Windows资源管理器中查看“文件夹”权限时(右键单击该文件夹并选择“属性”,转到“安全性”选项卡),那里是正确的权限,但是它们是不可编辑的。
此外,单击“高级安全设置”的“高级”按钮显示SubFolder正在继承“父对象”的“用户”组权限,但该父对象是什么,因为它不在上面的文件夹中。
为什么CACLS添加的权限是不可编辑的,为什么它们是从不存在的父对象继承的?我想我可能在CACLS上设置了错误的选项。
我在Windows XP上。
然后,可以在Windows资源管理器的“安全性”选项卡中编辑创建的选项。
想改善这个问题吗? Update the question,所以它是用于堆栈溢出的on-topic。
已关闭8年。
Improve this question
在我的WinForms应用程序的NSIS设置脚本中,我使用以下CACLS命令为Users组授予子文件夹的完整权限:
Exec 'CACLS "$INSTDIR\SubFolder" /E /T /C /G "Users":F'
因此,实际上执行的CACLS命令类似于:
CACLS "c:\Program Files\MyApp\SubFolder" /E /T /C /G "Users":F
然后,当我在Windows资源管理器中查看“文件夹”权限时(右键单击该文件夹并选择“属性”,转到“安全性”选项卡),那里是正确的权限,但是它们是不可编辑的。
此外,单击“高级安全设置”的“高级”按钮显示SubFolder正在继承“父对象”的“用户”组权限,但该父对象是什么,因为它不在上面的文件夹中。
为什么CACLS添加的权限是不可编辑的,为什么它们是从不存在的父对象继承的?我想我可能在CACLS上设置了错误的选项。
我在Windows XP上。
最佳答案
我想我已经明白了:更改CACLS以使用/P'replace'而不是/G'grant'似乎更好:
CACLS "c:\Program Files\MyApp\SubFolder" /E /T /C /P "Users":F
然后,可以在Windows资源管理器的“安全性”选项卡中编辑创建的选项。
关于windows - CACLS困惑,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2999807/
10-11 23:33