События сборки, разрешение при запуске скрипта

#c# #.net #windows #batch-file

#c# #.net #Windows #пакетный файл

Вопрос:

У меня есть .bat скрипт, который я настраиваю для запуска my post-build event call $(ProjectDir)scriptsinstall.bat , этот скрипт для установки службы на моем локальном компьютере.

Когда я открываю cmd и run as administrator , этот скрипт работает, но если я запускаю в обычном cmd режиме, он не работает. Существует какой-то способ, которым я запускаю call $(ProjectDir)scriptsinstall.bat в режиме администратора в Visual studio, post-build event command line или кто-то другой, чтобы скрипт работал в обычной командной строке.

Примечание: у меня есть права администратора

Ответ №1:

Предполагая, что это Windows 7 или более поздняя версия:

Даже если у вас есть права администратора на компьютере, вам все равно нужно запускать Visual Studio с правами администратора, чтобы делать то, что обычный пользователь не может сделать из-за UAC. Щелкните правой кнопкой мыши значок VS и выберите «Запуск от имени администратора».

Ответ №2:

Может быть, на несколько лет слишком поздно, но вот решение для тех, кто все еще ищет.

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

если нет «% 1» == «am_admin» (запуск powershell -запуск команды ‘%0’ am_admin amp; exit / b)