Windows 7 и Vista UAC – программатически запрашивает повышение в C #

У меня есть программа, которая требует очень редко для администратора в очень редких случаях, поэтому я не хочу, чтобы мой манифест требовал постоянного повышения.

Как я могу запрограммировать запрос по высоте только тогда, когда мне это нужно?

Я использую C #

WindowsPrincipal pricipal = new WindowsPrincipal(WindowsIdentity.GetCurrent()); bool hasAdministrativeRight = pricipal.IsInRole(WindowsBuiltInRole.Administrator); if (!hasAdministrativeRight) { RunElevated(Application.ExecutablePath); this.Close(); Application.Exit(); } private static bool RunElevated(string fileName) { //MessageBox.Show("Run: " + fileName); ProcessStartInfo processInfo = new ProcessStartInfo(); processInfo.Verb = "runas"; processInfo.FileName = fileName; try { Process.Start(processInfo); return true; } catch (Win32Exception) { //Do nothing. Probably the user canceled the UAC window } return false; } 
  • Использование загрузчика Vista вместо GRUB
  • Загрузка файлов в Ubuntu делает их «разделяемыми» в Vista
  • Удаленный рабочий стол для Ubuntu
  • Как я могу автоматически сохранять снимки экрана нажатием кнопки Prt Scr?
  • Почему моя VPN не будет подключаться?
  • Как сбросить драйверы видео / дисплея в Vista без перезагрузки ОС?
  • Обновление Windows не запускает Vista SP2
  • Как я могу узнать, какое приложение крадет фокус в Vista?
  • Как запустить Streamripper32 из Task Scheduler
  • Почему контур окна «Диспетчер задач» продолжает исчезать?
  • Как сбросить драйверы клавиатуры Windows по умолчанию?
  • Давайте будем гением компьютера.