我使用Inno Setup创建的工具包会在C:\Program Files\MyApp
中安装我的应用程序。
当我的应用程序启动时,它会尝试在C:\Program Files\MyApp\logs\
中创建新的日志文件,但它会失败。
在我的Inno脚本中,我有以下设置:
[Dirs]
Name: "{app}";
[Files]
Source: logs\*; DestDir: {app}\logs\; Flags: ignoreversion recursesubdirs createallsubdirs; Permissions: everyone-full
这为logs
文件夹中的所有文件提供了完全权限,但对文件夹本身没有。因此,当我的应用程序尝试在该文件夹中创建新的日志文件时,它会失败。
我如何设置文件夹的完整权限,而不仅仅是对其中的现有文件?
答案 0 :(得分:16)
在[Dirs]部分下为logs
文件夹设置权限对我有用:
[Dirs]
Name: "{app}";
Name: "{app}\logs"; Permissions: everyone-full
[Files]
Source: logs\*; DestDir: {app}\logs\; Flags: ignoreversion recursesubdirs createallsubdirs; Permissions: everyone-full
但是,正如在this post中一样,我不确定这是否是正确的方法。
答案 1 :(得分:5)
只需使用以下代码对我有用,我认为它更加安全:
[Dirs]
Name: "{app}\logs"; Permissions: users-full