Как запустить приложение с правами администратора с помощью файла манифеста в Visual Studio 2005?
Мне нужно создать приложение, которое должно создавать файлы/папки в "C:\Program файлы"," Пользователи[Имя пользователя] " и Sys32. Кроме того, приложение должно сделать некоторую запись в реестре.
Это приложение должно работать на Vista и выше. Кроме того, на Windows Server 2003 и выше.
Вышеуказанные операционные системы имеют концепцию контроля учетных записей пользователей (UAC), где для доступа к программным файлам и записи в реестр требуются права администратора.
Я заглянул на многие форумы и обнаружил, что с помощью Microsoft SDK мы можем проверить, есть ли у текущего пользователя права администратора или нет . Но функция "CheckTokenMembership" не работает для Vista и более высоких версий ОС.
Я также нашел решение, в котором файл манифеста можно использовать для того, чтобы заранее сообщить ОС, что текущее приложение требует прав администратора. Это делается с помощью тега "requestedExecutionLevel".
Я использую Visual Studio 2005 для создания приложения. Когда мы создаем приложение в Visual Studio, создается файл манифеста по умолчанию. Могу ли я изменить этот файл манифеста, включив в него тег "requestedExecutionLevel", чтобы мое приложение всегда работало с правами администратора?
Есть ли какой-либо другой метод, с помощью которого мое приложение работает с правами администратора, не спрашивая пользователя (администратора или стандартного) запустить мое приложение как "запуск от имени администратора"??
Спасибо!