Paromshick
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Я сам себе отвечу, может кому-то пригодится... Updated В результате всенародного обсуждения, несколько постов ниже, родилось следующее При запуске пакетника с повышенными привилегиями, то есть от Администратора, он запускается в system32 (во всяком случае, он "забывает" о каталоге своего размещения) Вернуть его на путь истинный помогает "%~dp0" В моём случае получилось Код: CERTUTIL -addstore -enterprise -f -v root "%~dp0"CA.cer | Здесь, файл передаваемый утилите Certutil указывается напрямую. Если у вас несколько файлов, лежащих в каталоге с пакетным файлом, или по иным соображениям, то можно использовать Код: @echo off pushd "%~dp0" rem Контрольный выстрел echo %cd% <тут команды которые используют файлы в текущем каталоге> popd pause | Помня, что Код: В начале пакетного файла решит все проблемы, текущим каталогом станет каталог батника, путь к нему можно будет не указывать. При этом следует понимать принцип, что Цитата: А феншуйность такая: 1) cd /d не поддерживает запуск с UNC-путей; 2) pushd подключает для этого временный сетевой диск - отключает по popd; 3) прямое указание пути через %~dp0 - просто работает и все. | (C) Ru-Board
| Всего записей: 3019 | Зарегистр. 12-04-2013 | Отправлено: 21:42 18-12-2017 | Исправлено: Paromshick, 11:01 19-12-2017 |
|