2013-07-11 45 views
10

Bộ của tôi được tạo bằng Inno Setup cài đặt ứng dụng của tôi ở C:\Program Files\MyApp.Cài đặt Inno - Cách đặt quyền đầy đủ trên một thư mục, không chỉ cho nội dung của nó

Khi ứng dụng của tôi bắt đầu, nó sẽ cố gắng tạo các tệp nhật ký mới trong C:\Program Files\MyApp\logs\ nhưng không thành công.

Trong kịch bản Inno của tôi có các cài đặt sau:

[Dirs] 
Name: "{app}"; 

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

này cho phép đầy đủ về tất cả các file trong thư mục logs, nhưng không phải trên thư mục riêng của mình. Vì vậy, khi ứng dụng của tôi cố tạo một tệp nhật ký mới bên trong thư mục đó, nó không thành công.

Làm cách nào để tôi có thể đặt toàn quyền trên thư mục, không chỉ trên các tệp hiện có trong thư mục?

+1

Các [ 'giống như here'] (http://stackoverflow.com/questions/17580222/creating -folder-for-log-files-for-nlog-with-innosetup # comment25581266_17580222) áp dụng cho bạn. – TLama

+1

@TLama cảm ơn vì liên kết, tôi sẽ thử nó và quay lại với kết quả – Cornelia

+0

Bất cứ khi nào có thể, tránh sử dụng toàn quyền và sử dụng sửa đổi thay thế. – amalgamate

Trả lời

11

phép Thiết lập cho logs thư mục dưới [dirs] phần làm việc cho tôi:

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

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

Nhưng, như trong this post, tôi không chắc chắn nếu đó là cách thích hợp để làm điều đó.

+0

Đã không làm việc cho tôi –

+0

mọi người đầy đủ có thể là quá nhiều, từ tài liệu có vẻ như người dùng sửa đổi là đủ. http://www.jrsoftware.org/ishelp/index.php?topic=dirssection http://www.jrsoftware.org/ishelp/index.php?topic=filessection –

3

Đơn giản chỉ cần sử dụng đoạn mã sau làm việc cho tôi và tôi nghĩ rằng nó là nhiều bảo đảm:

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