2016-11-29 4 views
0

Я хочу изменить значение реестра (REG_DWORD), а затем запустить приложение с помощью пакетного файла, который находится в той же папке, что и заявление. Я попытался следующие строки, но это не работает:Измените значение реестра, затем запустите приложение, используя пакетный файл

reg add "HKEY_CURRENT_USER\A User Name\An Application Name" /v A value name_h3981298716 /d "99" /t REG_DWORD /f 

START %~dp0AnApplicationName.exe 

«СТАРТ ...» будет работать без «рег добавить ...» код. Пакетный файл может запускать приложение, но он не может изменить значение реестра типа REG_DWORD.

Как правильно выполнить последовательность ниже с помощью командного файла?

  1. Сначала измените значение реестра типа REG_DWORD.

  2. Затем запустите приложение.

+0

Потому что есть что-то не так. Пожалуйста, будьте более конкретными! – aschipfl

+0

Попробуйте окружить '% ~ dp0AnApplicationName.exe' двойными кавычками. Всякий раз, когда командный файл «не работает» размещает столько полезных «эхо» там и запускает его с помощью командной строки. С этим вы можете проверить, в какой момент файл вышел из строя. – geisterfurz007

+0

«СТАРТ ...» будет работать без кода «reg add ...». Пакетный файл может запускать приложение, но он не может изменить значение реестра типа REG_DWORD. – Bayu

ответ

1
reg add "HKCU\A User Name\An Application Name" /v "A value name_h3981298716" /d "99" /t REG_DWORD /f 

Обратите внимание, что если имя значение содержит пробелы, то оно должно быть заключено в двойные кавычки. Продолжайте делать это, даже если имя значения не содержит пробела.

Пример, с другим именем ключа:

==> reg query "HKCU\Software\Test Key" /t reg_dword 

End of search: 0 match(es) found. 

==> reg add "HKCU\Software\Test Key" /v A value name_h3981298716 /d "99" /t REG_DWORD /f 
ERROR: Invalid syntax. 
Type "REG ADD /?" for usage. 

==> reg add "HKCU\Software\Test Key" /v "A value name_h3981298716" /d "99" /t REG_DWORD /f 
The operation completed successfully. 

==> reg query "HKCU\Software\Test Key" /t reg_dword 

HKEY_CURRENT_USER\Software\Test Key 
    A value name_h3981298716 REG_DWORD 0x63 

End of search: 1 match(es) found. 
+0

Я окружил имя значения двойными кавычками, затем запустил командный файл, но значение все равно не изменилось. – Bayu

+0

@Bayu Если значение не изменяется, вы должны получить сообщение об ошибке. Добавьте команду 'pause' непосредственно под' reg add ...', чтобы увидеть результат. Проверьте успех с помощью 'reg query ...' так же, как в моем примере. – JosefZ

+0

Появилось сообщение после добавления «паузы» под «reg add ...»: – Bayu

Смежные вопросы