WindowsSdkDir настроен неправильно в Visual Studio 2010

Итак, я уже давно это ищу, безрезультатно! Кто-нибудь понял, как изменить макрос $(WindowsSdkDir) в visual studio 2010, чтобы указать на любую версию Windows sdk, которую они хотели бы?

Надеюсь, это может быть ссылкой на всех тех, кто будет искать это после меня.:)

Ответ 1

У меня возникла аналогичная проблема при попытке настроить новую систему с помощью VS2010 и SDK Windows 7/.NET 4 (v7.1). Решение оказывается аналогичным решению для Visual Studio 2008, но в другом месте реестра. Вы хотите применить те же изменения, но местоположение

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows

для 32b Windows и

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows

для 64b Windows.

Кроме того, в зависимости от вашей установки (для обеих версий Windows 32b и 64b) вам также может потребоваться изменить соответствующий ключ в дереве HKEY_CURRENT_USER.

Вы хотите изменить следующие клавиши, чтобы указать версию SDK, которую вы хотите использовать:

CurrentInstallFolder
CurrentVersion
ProductVersion

После внесения изменений я перезапустил Visual Studio и использовал соответствующую версию SDK. Я не знаю, является ли это ошибкой в ​​установщике SDK (один был зарегистрирован для WindowsSDK v6.1, но ни один из них для v7. 1), или если это по дизайну, но все, кажется, правильно компилируется после моих изменений.

Протестировано для 32b и 64b Windows 7.

Ответ 2

Чтобы настроить отдельный проект Visual Studio 2010 для использования определенной версии Windows SDK, перейдите в Project | Свойства, выберите вкладку "Общие" (в разделе "Свойства конфигурации" ), а затем установите "Набор инструментов для платформы", чтобы указать на SDK, который вы хотите использовать. Макрос WindowsSdkDir изменится соответствующим образом.

Не забудьте сделать это изменение для всех конфигураций и всех платформ.

Ответ 3

[HKEY_CURRENT_USER\Software\Microsoft\Microsoft SDKs\Windows] 
"CurrentInstallFolder"="C:\\Program Files\\Microsoft SDKs\\Windows\\v7.1\\"

Обратите внимание, что в отличие от других мест реестра, на самом деле не существует суб-ключа для 7.1. Не путайте Visual Studio 2008 в любом случае.