You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编译纯C程序Nethack时缺失Microsoft.DesktopBridge.props报错求助

NetHack编译报错:找不到Microsoft.DesktopBridge.props的解决办法

错误信息

"C:\NetHack-NetHack-3.6.6_Released\win\win32\vs2017\NetHack.sln" (Clean;Build target) (1) ->
"C:\NetHack-NetHack-3.6.6_Released\win\win32\vs2017\NetHackPackage.wapproj" (Clean target) (33) ->
  C:\NetHack-NetHack-3.6.6_Released\win\win32\vs2017\NetHackPackage.wapproj(27,3): error MSB4019: The imported project "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\DesktopBridge\Microsoft.DesktopBridge.props" was not found. Confirm that the expression in the Import declaration "C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\DesktopBridge\\Microsoft.DesktopBridge.props" is correct, and that the file exists on disk.

问题场景

在Windows系统上编译NetHack 3.6.6或最新3.7版本源码时,无论使用VS2017还是VS2022,均出现上述错误。本地不存在Microsoft.DesktopBridge.props文件,且NetHack为纯C程序,对出现此类报错存在疑惑。

原因分析

  • 报错并非来自NetHack的主C程序项目,而是解决方案中附带的NetHackPackage.wapproj项目——这是一个Windows应用打包项目,用于生成MSIX格式的安装包,和主程序的纯C代码逻辑完全无关。
  • 该打包项目依赖Microsoft Desktop Bridge的MSBuild工具链,Microsoft.DesktopBridge.props是其中的核心配置文件,若Visual Studio未安装对应的打包组件,就会触发文件找不到的错误。

解决办法

方法1:跳过打包项目,直接编译主程序(推荐,无需额外安装组件)

  • 打开VS解决方案后,在解决方案资源管理器中右键点击NetHackPackage项目,选择卸载项目。
  • 仅选中NetHack主项目(如NetHack)执行编译操作,即可正常构建纯C的游戏程序。

方法2:安装缺失的VS组件(若需要生成MSIX安装包)

  • 打开Visual Studio Installer,选择对应的VS版本(2017/2022)点击修改。
  • 在工作负载列表中找到通用Windows平台开发,勾选后展开详细选项,确保选中MSIX打包工具;也可直接在单个组件中搜索Desktop Bridge相关组件并勾选,完成安装后重新编译即可。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 22:42:08