Маленький Уиллис здесь. Я пытаюсь использовать пакетный скрипт для редактирования существующего раздела реестра, который используется при двойном щелчке файла .jar. Проблема в том, что данные, которые я пытаюсь ввести, содержат кавычки, но мне также нужны кавычки, чтобы они считались строкой.
Пример:
reg add "HKEY_LOCAL_MACHINE\Software\Classes\jarfile\shell\open\command" /v "" /t REG_EXPAND_SZ /d "C:\Program Files\Java\jre7\bin\javaw.exe" -jar "%1" %* /f
Когда я запускаю это в пакетном сценарии, окно cmd распечатывает «Ошибка: слишком много параметров командной строки»
Итак, чтобы сделать это простым. Я хочу добавить раздел реестра с "C:\Program Files\Java\jre7\bin\javaw.exe" -jar "%1" %* в качестве данных, включая цитаты и %1 и %* точно так же, как они не преобразуется в какой-либо фактический оператор или строку.
РЕДАКТИРОВАТЬ:
Реестр обычно добавляется с использованием этой строки командной строки:
ftype jarfile="C:\Program Files\Java\jre7\bin\javaw.exe" -jar "%1" %*
он отлично работает в командной строке, но так же, как код, приведенный ниже, когда я использовал это в пакетном сценарии, "%1 " и %* не появляются.