首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在NSIS中设置目录权限?

如何在NSIS中设置目录权限?
EN

Stack Overflow用户
提问于 2008-09-22 19:15:37
回答 6查看 25.5K关注 0票数 38

我正在尝试使用Nullsoft Install System构建一个Windows installer,它需要由管理员进行安装。安装程序会创建一个"logs“目录。由于普通用户可以运行此应用程序,因此该目录必须对普通用户可写。如何指定所有用户都应该拥有使用NSIS脚本语言写入该目录权限?

我承认这听起来像是一个坏主意,但这个应用程序只是一个内部应用程序,只有几个人在专用网络上使用。我只需要保存日志文件,这样我就可以看到为什么应用程序会崩溃,如果发生了不好的事情。用户不能成为管理员。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2008-09-22 19:47:20

使用AccessControl插件,然后将其添加到脚本中,其中"logs“目录位于安装目录中。

代码语言:javascript
复制
AccessControl::GrantOnFile "$INSTDIR\logs" "(BU)" "FullAccess"

这将为所有用户提供对该文件夹的完全访问权限。

票数 37
EN

Stack Overflow用户

发布于 2010-10-14 00:01:42

在Windows Server2008机器上,AccessControl::GrantOnFile "<folder>" "(BU)" "FullAccess"不适用于我。取而代之的是,我不得不使用这个:

AccessControl::GrantOnFile "<folder>" "(S-1-5-32-545)" "FullAccess"

根据Microsoft Support: Well-known security identifiers in Windows operating systems的说法,S-1-5-32-545相当于“用户”。

票数 18
EN

Stack Overflow用户

发布于 2008-09-24 18:57:00

与其更改Program Files下目录的权限,为什么不将日志放在所有用户都可以写入的位置。

请参阅您的SetShellVarContext文档中的4.9.7.7NIS节。您可以将它与$APPDATA一起使用,以获取对所有用户都可写的应用程序数据文件夹。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/116876

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档