18

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ますが、フォルダー自体には付与されません。そのため、アプリケーションがそのフォルダー内に新しいログ ファイルを作成しようとすると、失敗します。

フォルダー内の既存のファイルだけでなく、フォルダーにも完全なアクセス許可を設定するにはどうすればよいですか?

4

2 に答える 2

22

logs[Dirs] セクションの下のフォルダーのアクセス許可を設定すると、うまくいきました。

[Dirs]
Name: "{app}"; 
Name: "{app}\logs"; Permissions: everyone-full

[Files]
Source: logs\*; DestDir: {app}\logs\; Flags: ignoreversion recursesubdirs createallsubdirs; Permissions: everyone-full

しかし、この投稿のように、それが適切な方法であるかどうかはわかりません。

于 2013-07-11T15:00:47.633 に答える
11

次のコードを使用するだけでうまくいき、より安全だと思います:

[Dirs]
Name: "{app}\logs"; Permissions: users-full
于 2015-02-15T22:00:46.727 に答える