2013-07-11 9 views
10

Il mio kit creato con Inno Setup installa la mia applicazione in C:\Program Files\MyApp.Inno Setup - Come impostare i permessi completi su una cartella, non solo per il suo contenuto

All'avvio dell'applicazione, tenta di creare nuovi file di registro in C:\Program Files\MyApp\logs\ ma non riesce.

Nel mio script Inno ho le seguenti impostazioni:

[Dirs] 
Name: "{app}"; 

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

Questo dà autorizzazioni complete su tutti i file all'interno della cartella logs, ma non sulla cartella stessa. Quindi, quando la mia applicazione tenta di creare un nuovo file di registro all'interno di quella cartella, fallisce.

Come posso impostare i permessi completi anche sulla cartella, non solo sui file esistenti al suo interno?

+1

Il [ 'stesso here'] (http://stackoverflow.com/questions/17580222/creating -folder-per-log-files-per-nlog-with-innosetup # comment25581266_17580222) applica per te. – TLama

+1

@TLama grazie per il collegamento, lo proverò e tornerò con i risultati – Cornelia

+0

Ogni volta che è possibile, evita di utilizzare le autorizzazioni complete e usa invece modifica. – amalgamate

risposta

11

Impostazione delle autorizzazioni per cartella logs nella sezione [Dirs] ha funzionato per me:

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

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

Ma, come in this post, io non sono sicuro se è il modo corretto di farlo.

+0

Non ha funzionato per me –

+0

tutti-pieno è forse troppo, dal doc sembra che gli utenti-modifica siano sufficienti. http://www.jrsoftware.org/ishelp/index.php?topic=dirssection http://www.jrsoftware.org/ishelp/index.php?topic=filessection –

3

Semplicemente utilizzando il seguente codice funziona per me e penso che sia più assicurato:

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