#windows-7 #uac
#windows-7 #uac
Вопрос:
Я разработал приложение, для выполнения которого требуются права администратора. При запуске приложения в Windows 7 пользователь всегда должен запускать приложение как «Запуск от имени администратора», в противном случае мое приложение запрашивает пользователя о том, что «у вас нет прав администратора и т.д. …». Это нормально и понятно из-за UAC в Windows 7.
Чтобы избавиться от этого, пользователь должен установить для приложения значение «Запуск от имени администратора». Я обновил «app.manifest» моего приложения и установил
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
Который выполнил работу за меня.
Но теперь рядом со значком моего приложения появляется экран с символом центра безопасности. Теперь мой вопрос: «Почему этот значок появляется в моем приложении и что он обозначает?»
Я попытался пометить другое из моих приложений как «Всегда запускаемое от имени администратора» через Windows, но тот же значок не появился в этом приложении.
Я хочу понять причины и сценарии.
Ответ №1:
Экран предназначен для напоминания пользователю, что если он дважды щелкните EXE-файл для его запуска, он получит диалоговое окно UAC. Эти диалоговые окна никогда не должны быть сюрпризом, и если вы получите то, чего не ожидали, вам действительно не следует соглашаться на это.
Экран появляется, если у вас есть манифест, который запрашивает повышение прав (требуется администратор или самый высокий уровень доступности, но не если в вашем манифесте указан asInvoker), а также для определенных имен файлов. Более подробную информацию смотрите в моей записи в блоге (написана во времена Vista, но все еще применима к Windows 7) и статьях MSDN о UAC и руководствах по пользовательскому интерфейсу.