visual studio 2010-Microsoft Windows SDK文件夹在Windows XP和Windo



我必须在c#代码中使用Microsoft SDK目录路径。在Win 7中,我可以很容易地通过以下行(硬编码(获得它:

string path = Path.GetFullPath("C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin");

win xpwin 98中是否存在某种路径?netsh.exexp98中的位置?

需要注意的是,当您阅读本文时,下面所说的任何内容都可能发生了变化。Windows SDK的结构和内容随着时间的推移而不断发展,并可能继续发展。

Windows SDK是根据其目标的Windows版本命名的。例如,当前的SDK名为适用于Windows 10的Windows 10 SDK,版本1803。它针对的是Windows 10版本1803,也称为Windows 2018年4月10日更新。该版本的Windows的版本号是10.0.17134

在32位系统上,Windows SDK的默认安装位置为Program FilesWindows Kits10,在64位系统上为Program Files (x86)Windows Kits10

安装文件夹中有许多子文件夹,例如includelibbin等。在这些子文件夹中的每一个子文件夹中都有根据目标Windows版本号命名的其他子文件夹,如10.0.17134.010.0.16299.0等。

因此,在为磁盘驱动器分配了字母C的系统上,像mlgen.exe这样的工具的完整路径对于32位代码文件是C:Program Files (x86)Windows Kits10bin10.0.17134.0x86,对于64位代码文件则是C:Program Files (x86)Windows Kits10bin10.0.17134.0x64

从旧的SDK安装来看,针对Windows 10周年纪念版(版本10.0.4393(的SDK似乎没有使用"Windows版本号"子文件夹。

以前的SDK针对的是Windows 8 Program Files (x86)Windows Kits8.0和Windows 8.1 Program Files (x86)Windows Kits8.1。那些早期版本的SDK也不使用"Windows版本号"子文件夹(至少我身边的那些版本没有(。

更久远的是,SDK曾经安装到一个名为Microsoft SDKs而不是Windows Kits的文件夹中。例如,Microsoft Windows SDK For Windows 7(7.1(默认安装在Program FilesMicrosoft SDKsWindowsv7.1Program Files (x86)Microsoft SDKsWindowsv7.1中。

当然,任何执行安装的人都可能选择使用不同的安装文件夹。

理想情况下,SDK路径不应在任何程序中进行硬编码,因为它可能会因不同的SDK版本和不同的系统而更改。

问题如何用程序检测和定位Windows 10 SDK提供了一些替代方案。

最新更新