Inno Setup не будет устанавливать в «Program Files» на Win 7 для ограниченного пользователя - PullRequest
2 голосов
/ 06 ноября 2011

По теме ... Я сделал Setup.exe с Inno Setup, который должен быть установлен в "{pf} {# MyAppName}".Это происходит в Win XP, а также в Win 7, если я вошел в систему с правами администратора, но если я попробую использовать Win 7 как пользователь с ограниченными правами, я получаю следующее сообщение об ошибке:

"Установке не удалось создатькаталог C: \ Program Files \ AppName ".

Что делать?Я не хочу (или не нужно), чтобы пользователь устанавливал в качестве администратора.

1 Ответ

6 голосов
/ 06 ноября 2011

Если вы хотите установить на %ProgramFiles%, вам нужно установить как администратор.Обычные пользователи не имеют доступа для записи в каталог %ProgramFiles%.

Если установка в %ProgramFiles% не является обязательным требованием, просто дайте пользователю выбрать каталог назначения или установите в {localappdata} вместо {pf}.{localappdata} гарантированно доступен для записи для его владельца.Он расширяется до чего-то вроде C:\Users\<user name>\AppData\Local.

. Вы также можете установить на {pf}, если он работает от имени администратора, и на {localappdata}, если он работает от имени пользователя с ограниченными правами;используйте IsAdminLoggedOn для принятия решения.

Если установка на %ProgramFiles% обязательна, у вас нет другого выбора, кроме как запускаться от имени администратора.Чтобы это работало правильно, убедитесь, что в вашем файле .iss либо не определена опция PrivilegesRequired , либо установлено значение admin.Затем, когда установщик запустит непривилегированный пользователь, появится приглашение UAC с запросом учетных данных с достаточными правами доступа (если только UAC не отключен, и в этом случае единственным способом установки является запуск от имени).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...