переменная из реестра (командные файлы) - PullRequest
0 голосов
/ 29 июля 2011

Я делаю небольшой мод для старой игры sims 1, и мне показалось, что я делаю простой командный файл для его установки, просто для фантазии. Во всяком случае, в реестре вы можете найти путь установки

[HKEY_LOCAL_MACHINE\SOFTWARE\Maxis\The Sims]
"InstallPath"="C:\\Program Files\\Maxis\\The Sims"

Теперь мне нужно, чтобы это была переменная в моем bat-файле, например

set simsdir=%installpath%

как мне это сделать? Я гуглил это, но это не имело никакого смысла, поэтому я спрашиваю здесь: p

Приветствия

1 Ответ

1 голос
/ 29 июля 2011

Звучит так, как будто вам нужно позвонить reg.exe

Принятый ответ на 771240 выглядит так, как вам нужен синтаксис.Я не проверял это, но это должно выглядеть примерно так:

Set Reg.Key=HKEY_LOCAL_MACHINE\SOFTWARE\Maxis\The Sims
Set Reg.Val=InstallPath
For /F "Tokens=2*" %%A In (
    'Reg Query "%Reg.Key%" /v "%Reg.Val%" ^| Find /I "%Reg.Val%"' )
Do Call Set simsdir=%%B
echo %simsdir%

edit

Может быть, попробуйте это для всех на одной строке, это единственноекак я мог заставить его работать.Я немного заржавел в старых пакетных файлах, хотя

Set Reg.Key=HKEY_LOCAL_MACHINE\SOFTWARE\Maxis\The Sims
Set Reg.Val=InstallPath

For /F "Tokens=2*" %%A In ('Reg Query "%Reg.Key%" /v "%Reg.Val%" ^| Find /I "%Reg.Val%"' ) Do Call Set simsdir=%%B
echo %simsdir%
...