Windows SDK 8: confusion concernant l’emplacement d’installation, la nomenclature des dossiers et la variable d’environnement WindowsSdkDir_old

En travaillant avec le système de génération Visual Studio 2012, contrairement aux versions précédentes du SDK, je me suis rendu compte que le SDK Windows 8 était installé dans deux emplacements distincts.

C:\Program Files (x86)\Windows Kits\8.0\ - Everything sans .NET 4.5 

comme mentionné dans

 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\v8.0\InstallationFolder 

et

 C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\ 

comme mentionné dans

 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\v8.0A\InstallationFolder 

Il semble que Microsoft ait séparé le Core SDK de .NET Framework

J’ai aussi essayé de corréler avec comment

  * %VS_HOME%\VC\bin\vcvars32.bat * %VS_HOME%\VC\bin\x86_amd64\vcvarsx86_amd64.bat * %VS_HOME%\VC\bin\amd64\vcvarsamd64.bat 

fonctionne maintenant, et il semble qu’il se réfère à l’emplacement de l’infrastructure .NET 4.5 avec WindowsSdkDir_old

J’ai réalisé d’autres choses intéressantes

  1. % WindowsSdkDir% \ Include a trois hiérarchies: Shared, um et WinRT
  2. Windows SDK a été installé avec VS 2010 mais avec VS 2012 je devais l’installer séparément.

Donc ma question est

  1. Existe-t-il une raison particulière de séparer .NET 4.5 du SDK principal?
  2. Quelle est la raison de faire référence à l’emplacement d’installation de .NET 4.5 en tant que WindowsSdkDir_old
  3. Pourquoi Windows SDK 8.0A ne fait-il pas partie du package d’installation de VS 2012?
  4. Puis-je continuer à utiliser Windows SDK 7.1A avec VS 2012?
  5. Quelle est la signification du chemin d’inclusion% WindowsSdkDir% \ Include [Shared | um | WINRT]?

En ordre…

  1. .NET est construit par une organisation interne différente (Division des développeurs); le SDK est construit par Windows.
  2. Ne sais pas
  3. Visual Studio n’a jamais installé de kit de développement Windows. Il y a des gigaoctets d’échantillons et d’outils dans le SDK qui ne font pas partie de Visual Studio.
  4. Oui, les versions précédentes du kit de développement Windows fonctionneront bien avec VS 2012.
  5. Je ne suis pas certain de um , mais WinRT fichiers WinRT sont spécifiques à Windows Runtime et ne peuvent pas être (facilement) utilisés par les applications de bureau. Il est préférable de les garder séparés.