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

时间:2015-07-28 15:23:02

标签: batch-file msbuild visual-studio-2015

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

  

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

批量生效VS2013

  

呼叫"%VS120COMNTOOLS%vsvars32.bat"
     msbuild solution.sln / t:rebuild / p:Configuration = Release / p:Platform ="任何CPU"

工作正常。

批量生效VS2015

  

呼叫"%VS140COMNTOOLS%vsvars32.bat"
     msbuild solution.sln / t:rebuild / p:Configuration = Release / p:Platform ="任何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...
    )  
)   

...并且在调用msbuild之后。

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

4 个答案:

答案 0 :(得分: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\\"

谢谢你的提示。

答案 1 :(得分:4)

我最近遇到了同样的问题。问题是PATH过长,导致在批处理文件中调用时找不到C:\Windows\System32\reg.exe命令。我从我的PATH删除了我能做的事情,这纠正了问题。

答案 2 :(得分:2)

我在VS 2013和%VS110COMNTOOLS%上遇到了类似的问题...我尝试过在互联网上找到的大量东西,但没有一个工作,我在网上找到的最常见的解决方案是C:\ windows \ system32从PATH环境变量中丢失,但在我的机器上所有变量都是正确的,并指向正确的目录。

我安装了vs2017的Windows 10映像,之前没有安装其他可视工作室,所以我恢复了该映像,然后继续安装VS2013,然后我安装了VS2010,最后安装了VS2012。

执行此操作后,构建正常并且错误消失...我猜安装VS2012作为最后一个修复了VS110COMNTOOLS变量的问题,甚至我尝试重新安装所有的视觉工作室然后回滚到窗口我有10张照片。

我希望你能在你的机器上做类似的事情,尝试在Visual Studio安装之前恢复你的系统,然后安装你需要的视觉工作室,将VS2015作为最后一个。

答案 3 :(得分:0)

在我的情况下,问题是我的系统管理员完全禁用了我的电脑上的注册表编辑。

这导致命令行命令reg无法运行,导致报告错误。

解决方案是启用注册表访问。

注意 - 这也导致regedit被禁用,因此另一个答案中提到的手动修复对我来说是行不通的。