删除旧版本的Windows 10 SDK是否可行?

60

我刚刚安装了最新版的SDK(10.0.10586.0),不知道是否可以删除旧版本Windows 10 SDK(10.0.10240.0和10.0.10150.0)的库文件?

或者有没有安全可靠的程序可以做到这一点?


2
我希望你可以通过“添加/删除程序”来卸载它们。 - Harry Johnston
4个回答

11
您可以通过“添加/删除程序”卸载旧版本。它为每个版本维护一个不同的条目。

11
如果存储空间对您来说是一大问题,您可以删除旧的SDK。在早期Windows 10 Creators Update版本中,可以通过程序文件进行删除,在新的Windows 10版本中,则可从“设置”中进行删除。 然而,一个理想的软件至少应该在主要的Windows版本内提供良好的向后兼容性,目前为止就是Windows 10。
想象一下,某个使用早期版本Windows 10的人无法从商店下载您的应用程序。这会因为他们必须全部更新操作系统而失去用户/客户,而许多人都会避免这样做。
保留旧的SDK将允许您选择您的应用程序应支持的最低Windows 10版本,从而允许安装来自这些版本的设备。

8
你的意思是新版本的SDK本身不支持向下兼容吗? - Kyle Delaney
1
这是不正确的。Windows 10 SDK将针对通用C/C++运行时,它并非特定于操作系统。任何使用Windows 10 SDK的版本构建的内容都将在Windows 8.1和10上运行。Windows 8.1可能需要Windows更新,但它将适用于所有10的版本。 - Jason Locke
@KyleDelaney 是的。从我的经验来看,这几乎像是一种牺牲。 - Olorunfemi Davis
@JasonLocke 这里的问题是'需要更新'。人们会更新应用程序,但并不是每个人都会更新他们的操作系统,因为他们想安装你的应用程序。我的答案非常正确,当我将移动设备包括在我的UWP部署中时,这种情况变得更加痛苦。 - Olorunfemi Davis

7

如果您需要针对特定版本的Windows进行开发,那么您可能需要保留旧的SDK版本。随着新的SDK版本的发布,可能会添加一些旧版本Windows不支持的功能,这样您的代码就无法在该版本上运行。通常情况下,您需要使用最新可用的适用于目标受众的SDK版本。


您可以通过在项目设置中定义宏来针对特定版本进行目标定位,而不是使用旧的SDK。预处理器宏WINVER_WIN32_WINNT指定了您的代码支持的最低操作系统版本。请参阅https://learn.microsoft.com/en-us/cpp/porting/modifying-winver-and-win32-winnt?view=vs-2019。 - Ben Voigt

3
我有很多版本,不确定该删除哪个。我找到了如何将Windows Kits文件夹移动到其他磁盘? 如果空间是问题,那么您可以将Windows Kits文件夹移动到另一个驱动器。该帖子说要将Windows Kits文件夹移动到另一个驱动器,然后使用管理员特权运行以下命令:
mklink /J "C:\Program Files (x86)\Windows Kits" "D:\Windows Kits"

这会创建一个连接点,将C盘中的文件夹与另一个驱动器中的文件夹连接起来。

使用“joining”作为一个术语可能会非常误导。其他方面:回答很好。自从Windows 2000引入连接点以来,我一直在使用它。Vista符号链接是另一种重解析点的形式,但需要特殊权限。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接