Запрет на запуск с правами администратора - PullRequest
1 голос
/ 14 апреля 2011

Цель:

Звучит немного странно, но я должен предотвратить запуск программного обеспечения с правами администратора.

Проблема:

У меня есть инструмент установки, который очень хорошо устанавливает программное обеспечение. После завершения установки запускается само программное обеспечение. Поскольку инструмент установки работает с правами администратора, программное обеспечение, которое будет запускаться автоматически после установки, делает то же самое.

Но все настройки, которые нужны программе, не будут в этот раз записаны / прочитаны правильно, поскольку из-за виртуализации UAC каталог config отличается от каталога config, который пользователь будет иметь без прав администратора.

Вопрос:

Есть ли способ понизить административные права до прав пользователя, если родительский процесс владеет административными правами. App.config? StartParameter? или что-то еще

Информация: я использую INNOSETUP для сборки инструмента установки.

Спасибо за помощь

Ответы [ 2 ]

5 голосов
/ 14 апреля 2011

Просто установите runasoriginaluser флаг для запуска приложения.

0 голосов
/ 14 апреля 2011

Да, вы можете запустить процесс без повышенных прав, однако я не уверен, как это интегрируется с InnoSetup. Инструкции: Как запустить программу как пользователь настольного компьютера из приложения с повышенными правами .

Подумайте о том, чтобы пометить ваше приложение соответствующим манифестом для подавления виртуализации UAC, тогда оно будет использовать одни и те же каталоги в обоих случаях: без повышения и с повышением. И лучше использовать каталоги в профиле пользователя, не полагаясь на виртуализацию.

...