/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': приложение выполняется с использованием разрешений администратора. Пользователь, запускающий приложение, должен быть членом группы Администраторы. Если процесс открытия не выполняется с разрешениями администратора, система запрашивает учетные данные.

Значения и uiAccess можно указать level в одном шаге /MANIFESTUAC:fragment с помощью параметра . Фрагмент должен иметь следующую форму:

/MANIFESTUAC: [ " ] level= { 'asInvoker' | 'highestAvailable' | 'requireAdministrator' } uiAccess= { 'true' | 'false' } [ " ]

Пример:

/MANIFESTUAC:"level='highestAvailable' uiAccess='true'"

Задание данного параметра компоновщика в среде разработки Visual Studio

  1. Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.

  2. Выберите страницу свойствФайл манифеста компоновщикасвойств>компоновщика>.

  3. Измените свойства Включить контроль учетных записей (UAC),Уровень выполнения UAC и Обход защиты пользовательского интерфейса UAC .

Задание данного параметра компоновщика программным способом

  1. См. EnableUAC, UACExecutionLevel и UACUIAccess.

См. также раздел

Справочник по компоновщику MSVC
Параметры компоновщика MSVC