registry值与报价

我需要在batch file中插入一个值到registry中。 该值包含引号,这使得它很难插入。

set OPENCOMMAND="\"%JAVAHOME%\bin\javaw.exe\" -jar \"%%1\" %%*\"" reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\jarfile\shell\open\command" /v "" /t REG_SZ /d %OPENCOMMAND% 

这个结果几乎是正确的结果,除了值包含在reqistry周围的引号。

 "C:\Program Files\Java\jre7\bin\javaw.exe" -jar "%1" %*" 

这就是registry包含的内容以及它应包含的内容

 C:\Program Files\Java\jre7\bin\javaw.exe" -jar "%1" %* 

该怎么办?

这个脚本应该工作:

 reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\jarfile\shell\open\command" /v "" /t REG_SZ /d "\"%JAVAHOME%\bin\javaw.exe\" -jar \"%%1\" %%*"