VS2015/MsBuild/vsvars32.bat:无法确定VS安装的位置

Lau*_*HET 6 msbuild batch-file visual-studio-2015

我使用批处理来构建我的解决方案.它适用于Visual Studio 2013.但是使用Visual Studio 2015时会出现以下错误:

错误:无法确定VS安装的位置

VS2013批次

调用"%VS120COMNTOOLS%vsvars32.bat"
msbuild solution.sln/t:rebuild/p:Configuration = Release/p:Platform ="Any CPU"

工作正常.

VS2015批次

调用"%VS140COMNTOOLS%vsvars32.bat"
msbuild solution.sln/t:rebuild/p:Configuration = Release/p:Platform ="Any CPU"

错误:无法确定VS安装的位置.


环境变量VS140COMNTOOLS定义为

C:\ Program Files\Microsoft Visual Studio 14.0\Common7\Tools

这不是我操作系统上的好路径(Windows 8.1 64位).所以我将VS140COMNTOOLS设置为

C:\ Program Files(x86)\ Microsoft Visual Studio 14.0\Common7\Tools

但错误信息仍然相同.

如果有人有想法...
提前谢谢:)

编辑

我已经找到了mklink的临时解决方法(并添加了旧版Visual Studio的兼容性):

IF NOT "%VS140COMNTOOLS%" == "" (  
    IF NOT EXIST "%VS140COMNTOOLS%" (  
        mklink /J "%VS140COMNTOOLS%" "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools"  
    )  
    call "%VS140COMNTOOLS%vsvars32.bat"  
    echo Visual Studio 2015...
) ELSE (  
    IF NOT "%VS120COMNTOOLS%" == "" (  
        call "%VS120COMNTOOLS%vsvars32.bat"  
       echo Visual Studio 2013...
    ) ELSE (  
        call "%VS110COMNTOOLS%vsvars32.bat"  
        echo Visual Studio 2012...
    )  
)   
Run Code Online (Sandbox Code Playgroud)

...并在调用msbuild之后.

你有最好的解决方案吗?...

小智 8

对我来说,缺少HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7中的路径(x86).

它可以用这个.reg文件解决:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7]
"14.0"="C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\"
Run Code Online (Sandbox Code Playgroud)

谢谢你的暗示.

  • 值得注意的是,微软尚未解决问题. (2认同)