2015-05-12 56 views
0

我寫了一個批處理,它在指定的鍵下添加了一個新的註冊表值。該數據值是文件路徑,而且必須有外引號,像這樣:使用引用添加註冊表項數據

"C:\Program Files\Microsoft Office\Office15\Library\Custom_AddIn.xlam" 

enter image description here

但是,即使使用轉義字符來保持報價的時候,我已經能夠獲得最接近的是這個(使用此代碼

C:\Program Files\Microsoft Office\Office15\Library\Custom_AddIn.xlam" 

setlocal enableDelayedExpansion 
setlocal ENABLEEXTENSIONS 

SET VERSION=15.0 
SET PATH="C:\Program Files\Microsoft Office\Office15\Library\Custom_AddIn.xlam" 

REG add HKEY_CURRENT_USER\Software\Microsoft\Office\%VERSION%\Excel\Options /v OPEN /t REG_SZ /d %PATH%^" /f 

如果我錯過了第一次報價)嘗試將胡蘿蔔和報價添加到路徑的開頭,該批次根本不添加該值。

我也嘗試使用\來保持引用的效果相同:最後一個保留最後一個引號,一個在開始時保持該值不被完全添加。

我在這裏做錯了什麼?根據答案this question,我在做什麼應該工作...

回答

0

行情需要設置變量時就聲明進行轉義,你也應該把\」繞%PATH%,像這樣:

SETLOCAL enableDelayedExpansion SETLOCAL ENABLEEXTENSIONS

SET VERSION = 15.0 SET PATH = \ 「C:\ Program Files文件\的Microsoft Office \ Office15 \圖書館\ Custom_AddIn.xlam \」

REG ADD HKCU \軟件\微軟\ Office \%VERSION%\ Excel \ Options/v OPEN/t REG_S Z/d「%PATH%」/ f

+0

當我執行您的建議時,出現'ERROR:Invalid syntax.'錯誤。任何想法,爲什麼這是? – ARich

+0

我試過了確切的命令,它在我的Windows 7電腦上工作。我建議你使用相同的行創建一個.bat文件並執行它,你將**看到被替換的字符串**的/ d「%PATH%」,然後進行相應的調整。我希望這個幫助。 –

+0

我複製了你的代碼並創建了一個新的.bat文件。該文件不會爲我運行...仍會拋出'錯誤:無效的Systax'錯誤。我也有一臺Win7 64位機器。 – ARich