/MANIFESTUAC (встраивает в манифест сведений об UAC)
Указывает, следует ли внедрять в манифест программы сведения о контроле учетных записей.
Синтаксис
/MANIFESTUAC
/MANIFESTUAC:NO
/MANIFESTUAC:
level
/MANIFESTUAC:
uiAccess
/MANIFESTUAC:
fragment
Параметры
NO
Компоновщик не внедряет сведения UAC в манифест программы.
level
level=
за которым следует один из 'asInvoker'
, 'highestAvailable'
или 'requireAdministrator'
. По умолчанию — 'asInvoker'
. Дополнительные сведения см. в разделе с примечаниями.
uiAccess
uiAccess='true'
Если вы хотите, чтобы приложение обходить уровни защиты пользовательского интерфейса и вводить входные данные в окна с более высокими разрешениями на рабочем столе; uiAccess='false'
в противном случае . По умолчанию — uiAccess='false'
. Задайте этот аргумент только uiAccess='true'
для приложений специальных возможностей пользовательского интерфейса.
fragment
Строка, содержащая level
значения и uiAccess
значения. При необходимости может быть заключен в двойные кавычки. Дополнительные сведения см. в разделе с примечаниями.
Замечания
При указании нескольких /MANIFESTUAC
параметров в командной строке последний введенный имеет приоритет.
Ниже приведены варианты выбора /MANIFESTUAC:
level
.
level='asInvoker'
: приложение выполняется на том же уровне разрешений, что и запущенный процесс. Вы можете повысить уровень разрешений приложения, нажав кнопку "Запуск от имени администратора".level='highestAvailable'
: приложение выполняется на самом высоком уровне разрешений, который он может. Если пользователь, который запускает приложение, является членом группы "Администраторы", этот параметр совпадает с параметромlevel='requireAdministrator'
. Если самый высокий доступный уровень разрешений превышает уровень открывающего процесса, система запрашивает учетные данные.level='requireAdministrator'
: приложение запускается с помощью разрешений администратора. Пользователь, который запускает приложение, должен быть членом группы "Администраторы". Если открытие не выполняется с правами администратора, система запрашивает учетные данные.
Можно указать как значения, level
так и uiAccess
значения на одном шаге /MANIFESTUAC:
fragment
, используя этот параметр. Фрагмент должен находиться в следующей форме:
/MANIFESTUAC:
["
{ }uiAccess=
{'asInvoker'
|'true'
'false'
'highestAvailable'
|'requireAdministrator'
| } [ ]"
level=
Например:
/MANIFESTUAC:"level='highestAvailable' uiAccess='true'"
Задание данного параметра компоновщика в среде разработки Visual Studio
Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.
Выберите страницу свойств>файла манифеста манифеста компоновщика>конфигурации.
Измените свойства enable User Account Control (UAC), UAC Execution Level и UAC Bypass UI Protection.
Задание данного параметра компоновщика программным способом
- См. EnableUAC, UACExecutionLevel и UACUIAccess.