Inno Setup не будет устанавливаться в "Program Files" на Win 7 для ограниченного пользователя
По теме... Я сделал Setup.exe с Inno Setup, который должен быть установлен в "{pf}{#MyAppName}". Это происходит в Win XP, а также в Win 7, если я вошел в систему с правами администратора, но если я попробую Win 7 как пользователь с ограниченными правами, я получу следующее сообщение об ошибке:
Msgstr "Программа установки не смогла создать каталог C:\Program Files\AppName".
Что делать? Я не хочу (или не нужно), чтобы пользователь устанавливал в качестве администратора.
1 ответ
Если вы хотите установить в %ProgramFiles%
Вам нужно установить как администратор. Обычные пользователи не имеют доступа к записи %ProgramFiles%
каталог.
При установке в %ProgramFiles%
не является обязательным, просто позвольте пользователю выбрать каталог назначения или установить в {localappdata}
вместо {pf}
, {localappdata}
гарантированно доступен для записи для его владельца. Это расширяется до чего-то вроде C:\Users\<user name>\AppData\Local
,
Вы также можете установить в {pf}
если работает от имени администратора и {localappdata}
если работает как пользователь с ограниченными правами; используйте IsAdminLoggedOn, чтобы решить.
При установке в %ProgramFiles%
Это необходимо, у вас нет выбора, кроме как работать от имени администратора. Чтобы это работало правильно, убедитесь, что в вашем файле.iss либо не определена опция PrivilegesRequired, либо установлено значение admin
, Затем, когда установщик запустит непривилегированный пользователь, появится приглашение UAC с запросом учетных данных с достаточными правами доступа (если только UAC не отключен, и в этом случае единственным способом установки является "Запуск от имени").