You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

如何用Visual Studio 2019针对Windows 8(非8.1)开发程序?

在Visual Studio 2019中配置Windows 8 SDK以兼容Win8设备的解决方案

一、确认Windows 8 SDK的安装完整性

  • 检查默认安装路径C:\Program Files (x86)\Windows Kits\8.0,确保存在IncludeLibSDKManifest.xml等核心文件
  • 如果安装路径非默认,建议重新安装到默认目录以避免路径识别问题;若需保留自定义路径,需后续手动配置所有相关目录

二、通过编辑项目文件指定SDK版本(替代UI选择)

VS2019的项目属性UI可能默认不显示旧版SDK,直接修改.vcxproj文件更可靠:

  1. 右键项目 → 选择“卸载项目”
  2. 右键已卸载的项目 → 选择“编辑[项目名].vcxproj”
  3. 找到所有<WindowsTargetPlatformVersion>节点,将值修改为8.0
    <WindowsTargetPlatformVersion>8.0</WindowsTargetPlatformVersion>
    
  4. 保存文件,重新加载项目

三、修正VC++目录配置

若手动指定SDK后仍出现头文件找不到的错误(E1696),需手动配置包含目录和库目录:

  1. 打开项目属性 → 进入“VC++目录”
  2. 包含目录添加以下路径(根据SDK安装路径调整):
    • $(WindowsSdkDir_80)\Include\um
    • $(WindowsSdkDir_80)\Include\shared
    • $(WindowsSdkDir_80)\Include\winrt(若项目用到WinRT相关代码)
      若系统变量未识别,直接填绝对路径,例如:C:\Program Files (x86)\Windows Kits\8.0\Include\um
  3. 库目录添加对应平台的路径(以x86为例):
    • $(WindowsSdkDir_80)\Lib\win8\um\x86

四、解决MSB8036错误(SDK未被VS识别)

该错误是因为VS无法读取Windows 8 SDK的注册信息,可通过注册表修复:

  1. 打开注册表编辑器(regedit
  2. 定位到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots
  3. 检查是否存在KitsRoot80字符串值:
    • 若不存在,右键新建字符串值,命名为KitsRoot80,值设为Win8 SDK的安装路径(如C:\Program Files (x86)\Windows Kits\8.0\
    • 若已存在,确认路径与实际安装目录一致

五、清理并重新生成项目

  • 删除项目目录下的DebugRelease等编译输出目录
  • 打开VS的“生成”菜单 → 选择“清理解决方案”
  • 重新生成项目,避免旧配置残留导致的编译错误

额外注意事项

  • 确保项目使用的平台工具集(如v142,VS2019默认工具集)与Windows 8 SDK兼容,v142及以下工具集均支持Win8 SDK
  • 检查代码中是否使用了Windows 8.1或更高版本才引入的API,替换为Win8兼容的接口,避免运行时错误

内容的提问来源于stack exchange,提问作者cdonts

火山引擎 最新活动