windows 如何在Inno Setup中设置安装文件夹的权限

zi8p0yeb  于 2023-01-27  发布在  Windows
关注(0)|答案(1)|浏览(460)

我正在使用Inno Setup创建应用程序的安装程序。
在第一次运行我的应用程序是创建一个SQLite数据库,但它不能实现,而用户没有修改安装文件夹的权限。
我设法设置文件的权限:

[Files]
Source: "D:\....\***.jar"; DestDir: "{app}"; \
    Flags: ignoreversion; Permissions: users-full
Source: "D:\....\*"; DestDir: "{app}"; \
    Flags: ignoreversion recursesubdirs createallsubdirs; Permissions: users-full

但这没有帮助,因为我需要安装文件夹的完全用户权限,例如:C:\Program Files\InstallationFolder

fhity93d

fhity93d1#

[Files]节条目的Permissions参数仅适用于已安装的文件,不适用于隐式创建的目录。
要更改文件夹的权限,请在[Dirs] section中使用{app}的显式条目:

[Dirs]
Name: {app}; Permissions: users-full

虽然这不是一个好的做法。

  • 一般来说,Windows应用程序不需要对其文件夹的写入权限。这违反了Windows的指导原则。应用程序应该将数据写入用户配置文件文件夹(C:\Users\username\AppData)或公共数据文件夹(C:\ProgramData)。

另请参见Application does not work when installed with Inno Setup

  • 在您的特定情况下,最好以管理员身份运行数据库创建过程(例如,使用runascurrentuser flag)。

相关问题