2010-11-04 29 views
21

Tôi đã sử dụng VS2008 trên máy phát triển của mình trong một vài năm nay, với windows SDK phiên bản 7.1.Chuyển đổi VS2010 sang sử dụng Windows 7.1 SDK

Tôi đã cài đặt VS2010, và nó đang sử dụng Windows SDK v7.0a, nhưng tôi cần nó để sử dụng Windows 7.1 SDK (mà tôi đã cài đặt trước khi cài đặt VS2010).

Khi tôi chạy công cụ cấu hình Windows SDK 7.1, để chuyển đổi Windows SDK đang sử dụng, công cụ cập nhật cho VS2008, nhưng không phải cho VS2010. Thông điệp nó báo cáo là:

cụ
"The Windows SDK Configuration Tool has successfully set Windows SDK version v7.1 as the current version for Visual Studio 2008" 

Các cấu hình được cài đặt với Windows 7.1 SDK và được tìm thấy ở đây:

"C:\Program Files\Microsoft SDKs\Windows\v7.1\Setup\WindowsSdkVer.exe" 

VS2010 tiếp tục sử dụng WSDK 7.0a, mà vô cùng bực bội, như tôi cần để phát triển DirectShow (vì vậy tôi cần phải xây dựng các baseclasses, không được phát hành với bản phát hành WSDK 7.0a).

Tôi có đúng khi giả định rằng nó không cập nhật cài đặt VS2010 vì VS2010 chưa được cài đặt tại thời điểm tôi cài đặt Windows 7.1 SDK?

Tôi có thể sửa lỗi thủ công hay tôi nên gỡ cài đặt Windows 7.1 SDK, sau đó cài đặt lại?

Bất kỳ đề xuất/giải pháp nào khác cho việc này?

+1

liên quan: [Windows SDK 7.1 + Visual Studio 2010] (http://stackoverflow.com/questions/4890504/), [WindowsSdkDir không được đặt chính xác trong Visual Studio 2010] (http://stackoverflow.com/questions/3599079 /) –

Trả lời

2

Hãy xem các trang này. Điều này sẽ giải quyết vấn đề của bạn ->Building Applications that Use the Windows SDK

+0

Các hướng dẫn trên trang đó không chính xác cho VS2010. Có những ý kiến ​​cố gắng sửa chữa nó, nhưng cũng có những điều sai trái :) – Nerdtron

21

Đối với tất cả những người sử dụng Visual Studio Command Prompt tôi đề cập đến bạn phải thay đổi VCVarsQueryRegistry.bat file (nó được gọi là (gián tiếp) bởi %VSINSTALLDIR%\VC\vcvarsall.bat) được đặt trong %VSINSTALLDIR%\Common7\Tools thư mục (typicaly C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools) bằng cách thay đổi dòng 26 từ

@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0A" /v "InstallationFolder"') DO (

để

@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1" /v "InstallationFolder"') DO (

tôi muốn một người nào đó fro m Microsoft giải thích lý do tại sao WindowsSdkVer.exe không hoạt động cho VS 2010 ...

+2

Tốt hơn là sửa đổi nó thành thẻ '@for/F '= 1,2 *" %% i in (' truy vấn reg "% 1 \ SOFTWARE \ Microsoft \ Microsoft SDK \ Windows "/ v" CurrentInstallFolder "') DO (' do đó, phiên bản được chọn với 'WindowsSdkVer.exe' được sử dụng. –

+1

Mặc dù, nếu bạn làm như @ivan_pozdeev đề xuất, bạn cũng nên chỉnh sửa dòng tiếp theo kiểm tra 'CurrentInstallFolder' thay vì' InstallationFolder' hoặc nó sẽ ngắt. – lapis

19

Thuộc tính dự án -> Thuộc tính cấu hình -> Chung, đặt Bộ công cụ nền tảng thành WindowsSDK7.1 (hoặc bất kỳ phiên bản nào bạn muốn sử dụng). Hãy nhớ khi bạn làm điều này để chọn tất cả các cấu hình (phát hành, gỡ lỗi, vv) và tất cả các nền tảng (win32, x64, vv) khi thích hợp. Tài liệu nói rằng bạn có thể đặt tùy chọn này trong thuộc tính của giải pháp, nhưng điều đó dường như không đúng.

+1

Hướng dẫn chi tiết hơn cho tuyến đường này là http://blogs.msdn.com/b/chuckw/archive/2010/06/15/windows-sdk- 7-1.aspx – Fizz

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