Присвоить переменной командной строки значение из реестра

  • 09.06.2018
  • 5 201
  • 2
  • 08.03.2019
  • 9
  • 9
  • 0
Присвоить переменной командной строки значение из реестра

Присваиваем переменной командной строки значение переменной из реестра

Казалось бы такая простая вещь - получить значение ключа реестра, и задать его как значение переменной вашего bat/cmd скрипта, но оказалось все не так просто. Консольная утилита REG не может это проделать своими силами, поэтому приходиться пользоваться усложненными методами, вот один из них:

for /f "tokens=2*" %%a in ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\futuremark\3dmark" /v install_path') do set "AppPath=%%~b"
echo %AppPath%
pause

Что делает этот скрипт?

Запускается цикл, который смотрит результат вывода команды REG QUERY, и присваивает возвращенное значение параметра install_path переменной AppPath.

Вторая и третья строчка здесь чисто для отображения информации - вторая выводит значение переменной (на тот случай, если нужно проверить работу первой команды), ну и третья приостанавливает работу командного интерпретатора до нажатия любой кнопки клавиатуры.

Была ли эта статья Вам полезна?

Комментарии к статье (2)

    • sunctorus

    HKEY_LOCAL_MACHINE ? Может, все-таки HKLM ?

    • HKLM это сокращенный вариант HKEY_LOCAL_MACHINE, и для многих программ (в том числе REG и REGEDIT) без разницы, в каком виде будет написано название данного раздела реестра.

Добавить комментарий

Ваш адрес email не будет опубликован.

Напоминаем Вам, что Ваше сообщение будет опубликовано только после проверки администратором сайта. Обычно это занимает 1-2 рабочих дня.