Взгляните на инструмент поднять
http://technet.microsoft.com/en-us/magazine/2007.06.utilityspotlight.aspx
Я использовал этот инструмент для запуска различных пакетных файлов, которые обычно требуют запуска в приглашении администратора. Оказывается, если вы передадите глагол "runas" либо API-интерфейсу ShellExecute, либо его эквиваленту в COM, метод ShellExecute в Shell.Приложение, запущенное приложение будет запрашивать повышение прав. Этот инструмент (который состоит из файлов ElevateCommand.inf, elevate.cmd и elevate.vbs) добавляет команду elevate в вашу систему. Это позволяет запускать приложения, запрашивающие повышение прав из командной строки, сценария или диалогового окна "Выполнить". Например, следующая команда открывает Win.ini с помощью Блокнота (после запроса на повышение прав):
elevate notepad c:\Windows\Win.ini
При использовании команды elevate с Windows Script Host (WSH), Windows PowerShell ™ или другими сценариями необходимо указать исполняемый файл узла сценария (например, wscript, cscript или powershell) в качестве приложения. Например, чтобы запустить VBS, вы должны использовать это:
elevate wscript “C:\windows\system32\slmgr.vbs” –dli
Текст справки объясняет это. Используйте поднять с -? или без параметров, чтобы увидеть текст справки.
Следующим раздражающим фактором было отсутствие опции контекстного меню "Запуск от имени администратора" (при щелчке правой кнопкой мыши по файлу в проводнике) для большинства типов сценариев Windows. Единственное исключение было для сценариев командной оболочки (с расширениями .bat и .cmd). Поэтому я решил исследовать это. Многие параметры контекстного меню для типов файлов управляются с помощью командных клавиш для типа "объект" в разделе HKEY_CLASSES_ROOT реестра (подробности см. В разделе Глаголы и ассоциации файлов на боковой панели). Оказывается, что если этот командный ключ называется runas, вызванная команда запросит повышение прав.
Поднять HTML-приложение PowerToy (ElevateHTA.inf)
Поднять Windows PowerShell Script PowerToy (ElevatePowerShellScript.inf)
Elevate WSH Script PowerToy (ElevateWSHScript.inf, elevate.cmd, elevate.vbs)
Эти PowerToys добавляют пункт контекстного меню «Запуск от имени администратора обозревателя» для типов файлов HTA, Windows PowerShell и Windows Script Host соответственно. ElevateWSHScript.inf также добавляет пункт «Запуск от имени администратора с помощью командной строки». (Пожалуйста, прочтите примечание в ElevatePowerShellScript.inf перед его установкой.)
Обязательно распакуйте мощную игрушку в c:\Windows\System32, или, если вы поместите инструмент в другое место, добавьте каталог в переменную $ PATH, чтобы вы могли легко вызывать ее внутри пакетных сценариев.