2012-12-14 27 views
2

如何從批處理腳本檢查Visual Studio Shell是否安裝以及是否安裝了哪個版本的Visual Studio Shell?從批處理中檢查Visual Studio Shell安裝

我明白,我們可以檢查文件/文件夾存在的條件下

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE 

說,但我正在尋找一個更優雅的和通用的解決方案。

任何幫助?

更新到接受的答案:

你的答案是優雅和做任務。因爲我是專門爲某些版本檢查,我使用(後檢查您所提供的鏈接):

@echo off 
reg query "HKEY_CLASSES_ROOT\VisualStudio.DTE.10.0" >> nul 2>&1 
if %ERRORLEVEL% NEQ 0 (echo VS 2010 not installed) else (echo VS 2010 installed.) 
reg query "HKEY_CLASSES_ROOT\VisualStudio.DTE.11.0" >> nul 2>&1 
if %ERRORLEVEL% NEQ 0 (echo VS 2012 not installed) else (echo VS 2012 installed.) 
+0

你想知道什麼?版本號或版本名稱?即10或者express/pro等 –

+0

其中之一或兩者都可以。 – dushyantp

+0

感謝您的回覆,僅供將來參考,請將明確標題的任何更新放入您的問題中(請參閱我的編輯),而不是編輯解決方案,因此更有意義。很高興看到你有'reg query'工作。 –

回答

4
@echo off 
for /d %%a in ("%programfiles%\Microsoft Visual Studio*") do (
for /f "tokens=3 delims=\" %%x in ("%%a") do echo %%x 
) 
pause >nul 

如果您需要更多的細節還有plenty of reg keys可以查詢,以獲得更多的信息,但,這將是要從鍵和值中提取所需的數據要困難得多。

注:如果您在x64上運行,那麼你可能需要根據所安裝VS其中添加的支票%systemdrive%\Program Files (x86)

+1

@Rob感謝您在編輯時通知我,我已將OP的回覆添加到他們的問題中,以便未來的讀者閱讀。 –