1

Создается сценарий развертывания для программного обеспечения, для которого требуется установить распространяемый Visual C++ 2013 в режиме без вывода сообщений из движущегося источника (иначе папка может находиться на ключе, на сервере, локально и т.д.) В качестве администратора.

Для всех других моих исполняемых файлов (в основном MSI) использование «% ~ dp0» перед именем файла (например, «% ~ dp0Antidote9.msi», за которым следуют такие аргументы, как /quiet, /q и т.д.), Работает нормально.

Но для VC Redist он не принимает мои аргументы.

Вот моя полная команда:

start /wait "%~dp0vcredist_x64.exe" /install /quiet /norestart

Он отлично тянет файл, но затем говорит, что мои аргументы недействительны, даже если я удаляю% ~ dp0, он работает нормально, и я получил аргументы от выполнения vcredist_x64.exe /?.

Есть ли что-то, что я делаю неправильно или что мне нужно изменить, чтобы мои аргументы работали?

Заранее спасибо!

1 ответ1

2

Вы можете использовать %CD%\ что означает Текущий каталог вместо %~dp0 .

Я не заметил никакой разницы между этими двумя.

В дополнение к этому, если вы использовали команду start , рекомендуется добавить дополнительный "" перед запуском программы и включить все параметры в одну кавычку, а также при необходимости экранировать кавычки. Пример:

start /wait "" "%CD%\MyProgram.exe /link \"MyOtherDLL.dll\""

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .