2012-12-18 42 views
1

我試圖讀取註冊表項值,並在節目中卻我的註冊表鍵包含空格的變量後者中使用它,但是現在我不能讓它工作,劑量任何人知道鋤處理鍵與空格?過程REG查詢與空間

for /f "tokens=3" %%a in ('reg query "HKEY_CLASSES_ROOT\Software\VTS\TREADSTONE LT\Main" /v EXECUTE ^| find /i "REG_SZ"') do set UserNm=%%a 

MSG * %UserNm% 
pause 

我正在使用Windows批處理。

回答

0

要使用雙引號,您需要在for循環中使用usebackq,並將'更改爲反標。

for /f "usebackq tokens=3" %%a in (`reg query "HKEY_CLASSES_ROOT\Software\VTS\TREADSTONE LT\Main" /v EXECUTE ^| find /i "REG_SZ"`) do set UserNm=%%a 
+0

FOR/F 「有usebackq令牌= 3」 %%一中('REG查詢 「HKEY_CLASSES_ROOT \ SOFTWARE \ VTS \紋石LT \ MAIN」/ V EXECUTE^|找到/ I 「REG_SZ」')不設置ACADVER = %% a msg *%ACADVER% –

+0

Did not work在regestry中手動檢查了密鑰,並說C:\ Program Files \ Autodesk \ AutoCAD Architecture 2012 \ acad.exe –

+0

它是如何工作的?你有錯誤嗎?這對我來說可以。 –