Windows Vista / 7 / Server 2008 R2 использует технологию контроля учетных записей (UAC) для обеспечения безопасности и защиты ОС от вредоносных программ путем ограничения привилегий приложения до разрешения администратора. Это причина, почему мы должны заставить наше приложение работать от имени администратора. Обычно это делается во время работы приложения. Процесс, щелкните правой кнопкой мыши на приложении и выберите «Запуск от имени администратора», чтобы запустить приложение с правами администратора. Если предположить, что пользователь забыл это сделать и нормально запустить приложение, то может возникнуть непредвиденное поведение. Поскольку все действия, требующие административных привилегий в Win Vista и выше (например, вызов процесса, использование системного диска и т. Д.), Не будут выполнены.
Таким образом, чтобы не запускать приложение от имени администратора каждый раз, мы можем заставить наше приложение работать от имени администратора по умолчанию.
Чтобы добиться этого, нам нужно немного изменить манифест приложения. Манифест приложения - это XML-файл, описывающий приложение.
Следуйте инструкциям, чтобы приложение .net запускалось от имени администратора:
Шаг 1. Перейдите в свойства проекта и нажмите кнопку «Просмотр параметров Windows». Откроется файл «app.manifest».
Шаг 2: В ключе requiredExecutionLevel измените значение уровня на «requireAdministrator» и значение uiAccess на «False».
Установка уровня «requireAdministrator» означает, что приложение запускается только для администраторов и требует, чтобы приложение запускалось с маркером полного доступа администратора.
Установка uiAccess в значение «False» означает, что приложению не нужно вводить данные в пользовательский интерфейс другого окна на рабочем столе. Приложения, которые не обеспечивают доступность, должны установить этот флаг в false. Приложения, которые требуются для ввода данных в другие окна на рабочем столе (например, на экранной клавиатуре), должны установить для этого значения значение true.
Шаг 3. Сохраните изменения, пересоберите приложение и установите его на Windows Vista или более поздней версии.
Теперь приложение автоматически запускается от имени администратора.