Встроенный reg.exe
Консольный инструмент позволяет добавлять, удалять, экспортировать или сохранять (как куст) ключи и значения реестра. При добавлении значений реестра с помощью reg.exe
инструмент, вам может быть интересно, как передавать данные с двойными кавычками или переменными среды и добавлять их в реестр буквально.
В этой статье рассказывается, как создавать значения реестра, передавая двойные кавычки и переменные среды (без расширения или разрешения пути к папке), с помощью инструмента консоли reg.exe.
Добавьте данные реестра с двойными кавычками, используя REG.exe
Рассмотрим следующий случай. Если вам нужно написать в (default)
установив свои данные в "d:\my projects\runx64.exe"
с двойными кавычками вы должны будете избегать внутренних двойных кавычек, используя обратную косую черту.
Пример:
REG ADD HKCR\boxfile\shell\command /ve /t REG_SZ /d "\"d:\my projects\runx64.exe\" "\"%1\""
Если вы не избежите внутренних двойных кавычек вокруг данных, таких как:
REG ADD HKCR\boxfile\shell\command /ve /t REG_SZ /d "d:\my projects\runx64.exe %1"
Команда завершится успешно, но в итоге вы создадите следующий ключ / значение реестра без двойных кавычек:
Пример 2:
REG ADD HKCR\boxfile\shell\command /ve /t REG_SZ /d "\"d:\my projects\runx64.exe\" -runmax "\"%1\""
Добавьте значение реестра, содержащее расширяемые строковые данные, используя REG.exe
Чтобы добавить тип значения реестра REG_EXPAND_SZ и передать расширяемую строку точно так, как указано (без расширения переменной), вам нужно будет использовать каретку ^
символ с %
условное обозначение.
Пример:
REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop /t REG_EXPAND_SZ /d ^%USERPROFILE^%\Desktop
Если вы не используете символ каретки, как в следующем примере командной строки:
REG ADD "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop /t REG_EXPAND_SZ /d %USERPROFILE%\Desktop
Переменная среды или раскрываемая строка автоматически раскрываются или преобразуются в путь к папке, как показано на следующем рисунке.
Надеюсь, что эта статья помогла вам передать сложные аргументы командной строки с двойными кавычками и расширяемыми переменными в реестр, используя reg.exe
командная строка.