Показать полную графическую версию : Текущий каталог с правами администратора
aka_smile
25-09-2017, 17:33
Команда "%comspec%" /k в батнике открывает cmd с текущим каталогом.
Но если запустить через правоклик с правами администратора, то запускается в каталоге system32, как правильно сделать, чтобы запускалось с правами админа в текущем каталоге?
aka_smile,
Running a .bat file as administrator - Correcting current directory (https://www.codeproject.com/Tips/119828/Running-a-bat-file-as-administrator-Correcting-cur)
Вообще там не «текущий каталог», а «каталог, в котором содержится пакетный файл».
aka_smile
25-09-2017, 18:12
Казбек, по вашей рекомендации, создал bat файл с содержимым
@setlocal enableextensions
@cd /d "%~dp0"
скрипт при запуске не отрабатывает.
я предполагал, что при запуске будет запрос на запуск с повышенными привилегиями, где вопрос UAC да/нет
Вообще там не «текущий каталог», а «каталог, в котором содержится пакетный файл». »
Верно. Но прочитав сообщение автора темы, я сделал вывод, что ему как раз и нужно то, что описано по ссылке.
по вашей рекомендации, создал bat файл с содержимым »
Покажите содержимое всего файла.
скрипт при запуске не отрабатывает. »
А что происходит?? Предоставьте либо содержимое, либо результирующий скрин.
я предполагал, что при запуске будет запрос на запуск с повышенными привилегиями »
Правильно. Так и должно быть, если вы запускаете файл от имени Администратора и вы не шаманили с настройками UAC.
по вашей рекомендации, создал bat файл с содержимым »
Я не понял, вы что создали еще один файл или же вписали эти строки в уже имеющийся??
Опишите подробно задачу и что вы при этом делаете, а то пока только обрывки без конкретного полного содержимого.
я предполагал, что при запуске будет запрос на запуск с повышенными привилегиями, где вопрос UAC да/нет »
Нет, не будет.
Опишите словами, что Вам нужно, укажите условия применения, и Вам подскажут варианты решения.
Но если запустить через правоклик с правами администратора, то запускается в каталоге system32 »
ну нет
в каталоге system32 запустится основной процесс cmd.exe, а его пригласительное окно запущенное из "name.bat", запустится из директории "C:\" - как в примере, где и лежит "name.bat".
148367
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.