Inno Setup - Как дать одному конкретному пользователю права на папку - PullRequest
0 голосов
/ 11 января 2019

Я хочу дать права на папки одному конкретному пользователю (не группам пользователей). Я видел несколько примеров, но это дает права всей группе пользователей.

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

http://www.jrsoftware.org/ishelp/index.php?topic=dirssection

Я пробовал это, но я получил ошибку

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

Ошибка в строке 68 в D: \ installer.iss: параметр «Права доступа» включает неизвестный идентификатор безопасности: «Джон»

Можно ли дать права одному конкретному пользователю (строка с жестким кодом)?

1 Ответ

0 голосов
/ 11 января 2019

Должен сказать, что я нахожу это довольно подозрительным. Пользователи не должны иметь разрешения на запись в папку установки приложения. Если приложению необходимо сохранить некоторые данные, оно должно записать их в папку профиля пользователя (C:\Users\username\AppData) или в общую папку данных (C:\ProgramData).
См. Также Приложение не работает при установке с Inno Setup .


В любом случае, Inno Setup не поддерживает предоставление полномочий пользователю. Я на самом деле предполагаю, что это потому, что для этого нет действительно хорошего варианта использования (как объяснено выше).

Но вместо этого вы можете использовать Windows cacls команду из [Run] section .

[Run]
Filename: "cacls"; Parameters: """{app}"" /g John:w"; Flags: runhidden

(не проверено - но оно должно дать вам представление)

...