Принудительно запустить программу как неадминистратор в Vista
Я только что установил в Vista 32-разрядную программу, которая, по моему мнению, не должна требовать прав администратора. Он не установлен в системный каталог, и его назначение не должно требовать каких-либо особых привилегий. Тем не менее,.exe имеет щит UAC, и он просит меня повысить привилегии сразу после выполнения.
Я готов рисковать, делая неприятные вещи с привилегиями моей учетной записи, но не готов рисковать. Могу ли я что-то сделать, кроме как настроить для нее виртуальную машину (или загрузить исходный код и скомпилировать его самостоятельно)?
(FWIW, рассматриваемая программа - Карандаш --cil.evolus.vn/en-US/Downloads/Application.aspx - но я больше интересуюсь общими ответами, чем специфичными для приложения).
2 ответа
Взять из ответа на аналогичный вопрос:
Для всех приложений с
requestedPrivilegeLevel="highestLevel"
в их манифесте вы можете использовать Microsoft Application Compatibility Toolkit, чтобы закрепить приложение с помощью исправления RunAsInvoker, которое заставляет приложение работать с вашими стандартными пользовательскими токенами.Для получения дополнительной информации о том, как использовать Application Compatibility Toolkit ...(фрагмент)... общие инструкции.
Для этой конкретной программы вы можете обойти требование UAC:
Вместо обычного запуска Pencil, создайте ярлык для evolus\pencil\xulrunner.exe
, а затем добавить --app ..\app\application.ini
до конца, так что короткий путь:
"C:\Program Files (x86)\Evolus\Pencil\xulrunner\xulrunner.exe" --app ..\app\application.ini
Это позволит вам запускать Карандаш без UAC.
Источник: http://code.google.com/p/evoluspencil/issues/detail?id=275