0

我有一个 InstallScript 安装程序,它利用多个组件的动态文件链接。这些组件包含标准用户应该能够编辑的配置文件。我们最近发现,当这些文件安装在 Windows Server 08 上时,Administrators 组的权限设置为完全访问权限,但 Users 组只有读取和执行权限。典型的安装位置是 C:\programName。

我尝试在 C:\programName 目录中以管理员身份手动创建新文件(右键单击 - 新文本文件),并且它们生成时具有相同的权限。我假设这只是新文件的标准权限设置。

有什么方法可以在 InstallShield 中设置动态链接文件或包含它们的目录的权限?

我已经在

  • 组织 -> 组件
  • 应用程序数据 -> 文件和文件夹

但我什么也没找到。动态文件链接的文档没有提及权限。

我们正在使用 InstallShield 2010。

4

2 回答 2

1

一般来说,这些权限是一件好事;它们是从其父文件夹继承的。非管理员用户(包括在接受 UAC 提示之前访问受限的管理员)应该无法在Program Filesor下修改文件,C:因此我建议在您的应用程序中解决这个问题(例如通过使用每个用户的 Documents 文件夹)。由于您没有谈论为什么需要它,因此很难确定这是否适用于您的情况。

如果事实证明在安装而不是应用程序中解决这个问题确实有意义,您可以使用SetObjectPermissions API 以编程方式设置权限。

于 2011-05-17T13:29:32.237 回答
0

In "Files and Folders" page right-click the file or folder, select Properties and click the Permissions button. In the "Permissions" dialog you can then right-click in the Name(s) list and use the New context menu option to add a new permission.

If the option is not available for a file, you can try setting it on the parent folder.

于 2011-05-17T07:35:56.390 回答