2015-07-28 20 views
6

Tôi sử dụng một lô để xây dựng giải pháp của mình. Nó hoạt động tốt với Visual Studio 2013. Nhưng với Visual Studio 2015 lỗi này xảy ra:VS2015/MsBuild/vsvars32.bat: Không thể xác định vị trí của cài đặt VS

ERROR: Cannot determine the location of the VS installation

hàng loạt cho VS2013

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

tốt công việc.

hàng loạt cho VS2015

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

LỖI: Không thể xác định vị trí của quá trình cài đặt VS.


Biến môi trường VS140COMNTOOLS được định nghĩa để

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

Nó không phải là con đường tốt trên hệ điều hành của tôi (Windows 8.1 64 bit). Vì vậy, tôi đặt VS140COMNTOOLS để

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

Nhưng thông báo lỗi vẫn như nhau.

Nếu ai có ý tưởng ...
Cảm ơn trước :)

EDIT

Tôi đã tìm thấy cách giải quyết tạm thời này với mklink (và thêm khả năng tương thích cho Visual Studio tuổi trở lên):

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... 
    ) 
) 

... và sau khi gọi msbuild.

Có bạn một giải pháp tốt nhất? ...

+0

Đây là sự cố đăng ký bị hỏng, máy của bạn có vẻ thiếu mục nhập đăng ký bắt buộc trong giá trị HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ SxS \ VS7, 14.0. Hoặc phiên bản 32 bit trong Wow6432Node, phụ thuộc vào hương vị của cmd.exe. Rất không lành mạnh tất nhiên, cảm thấy tự do để hoảng loạn. –

+0

Cảm ơn rất nhiều Hans. Trong đăng ký của tôi, tôi có HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ VisualStudio \ SxS \ VS7 = C: \ Program Files \ Microsoft Visual Studio 14.0 \ và HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ VisualStudio \ SxS \ VS7 = C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \. Nó có vẻ đúng. –

+0

Hmm, giới hạn số lượng giải thích có thể có. Bạn sẽ cần phải tìm hiểu lý do tại sao vcvarsqueryregistry.bat trong cùng một thư mục không thực hiện được công việc của mình. Một môi trường lớn vượt quá kích thước tối đa là tất cả những gì tôi có thể nghĩ đến. –

Trả lời

8

Đối với tôi, con đường trong HKLM \ SOFTWARE \ Microsoft \ VisualStudio \ SxS \ VS7 đã mất tích (x86).

Nó có thể được giải quyết với .reg tập tin này:

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\\" 

Cám ơn các bạn gợi ý.

+2

Đáng chú ý, vấn đề vẫn chưa được Microsoft giải quyết. –

4

Gần đây, tôi đã gặp sự cố tương tự. Vấn đề là PATH quá dài, dẫn đến lệnh C:\Windows\System32\reg.exe không được tìm thấy khi được gọi trong tệp lô. Tôi đã xóa những gì có thể từ PATH và điều này đã khắc phục được sự cố.

+1

Cảm ơn lời khuyên này, tôi sẽ cố gắng dọn dẹp PATH :) –

2

Tôi đã gặp vấn đề tương tự với VS 2013 và% VS110COMNTOOLS% ... Tôi đã thử tải nhiều thứ mà tôi tìm thấy trên internet nhưng không có tác dụng nào, giải pháp phổ biến nhất mà tôi tìm thấy trực tuyến là C: \ windows \ system32 bị thiếu trong biến môi trường PATH, nhưng trên máy của tôi, tất cả các biến đều đúng và trỏ đến đúng thư mục.

Tôi đã cài đặt một cửa sổ 10 có cài đặt vs2017 và không có studio trực quan nào khác được cài đặt trước đó, vì vậy tôi đã khôi phục hình ảnh đó, sau đó tiến hành cài đặt VS2013, sau đó cài đặt VS2010 và sau đó cài đặt VS2012. Sau khi thực hiện việc này, việc xây dựng đã tốt và lỗi biến mất ... Tôi đoán rằng việc cài đặt VS2012 là cái cuối cùng khắc phục được vấn đề liên quan đến biến VS110COMNTOOLS, thậm chí tho tôi đã cố gắng cài đặt lại tất cả các studio trực quan trước khi quay trở lại windows 10 hình ảnh tôi đã có.

Tôi hy vọng bạn có thể làm điều gì đó tương tự trên máy của bạn, cố gắng khôi phục hệ thống của bạn trước khi cài đặt studio trực quan và sau đó cài đặt các studio trực quan bạn cần để lại VS2015.

0

Trong trường hợp của tôi, sự cố là chỉnh sửa đăng ký đã bị tắt hoàn toàn trên máy tính của tôi, bởi quản trị viên hệ thống của tôi.

Điều này dẫn đến lệnh dòng lệnh reg không thể hoạt động và dẫn đến lỗi được báo cáo.

Giải pháp là bật quyền truy cập đăng ký.

Lưu ý - điều này cũng khiến cho regedit bị vô hiệu hóa do đó khắc phục thủ công được ghi chú trong câu trả lời khác không thể thực hiện được đối với tôi.

Các vấn đề liên quan