3

我们如何通过批处理脚本检查是否安装了 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. ) 
4

1 回答 1

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

如果您需要更多详细信息,可以查询大量 reg 键以获取更多信息,但从键和值中提取所需数据会更加困难。

注意:如果您在 x64 上运行,则可能需要%systemdrive%\Program Files (x86)根据 VS 的安装位置添加检查。

于 2012-12-14T15:14:53.317 回答