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

如何使用MSVC 2019编译Quake 2官方源代码并解决项目迁移失败问题

MSVC 2019 编译Quake 2官方源代码解决方法

Quake 2原始项目由VC++ 6.0生成,MSVC 2019已移除对VC6项目的直接迁移支持,因此打开quake2.dsw时会触发如下报错:

Unable to convert project. Please make sure this is a valid Visual C++ 6.0 project

按以下步骤操作即可完成编译:

  • 首先安装MSVC 2019缺失的依赖组件:打开Visual Studio Installer,勾选安装v141生成工具集(VS 2017 配套工具)、Windows XP支持组件、桌面开发MFC组件,老项目编译必须依赖这些组件。
  • 不要直接打开.dsw工作区文件,手动创建新空白解决方案:打开MSVC 2019新建Win32桌面空白解决方案,按原始代码的目录结构,把所有.c、.h资源文件导入到解决方案中。原始Quake 2分为客户端、服务端、游戏逻辑三个独立模块,可对应创建三个子项目,也可先创建单个可执行项目导入所有代码。
  • 调整项目配置参数:
    • 字符集切换为使用多字节字符集,避免字符串类型不匹配报错
    • 编译器警告等级调整为等级3(/W3),或直接关闭C4013、C4133、C4244三类老代码语法兼容警告
    • 链接器依赖项添加winmm.lib、ws2_32.lib、opengl32.lib三个系统库
    • 预处理器定义新增_CRT_SECURE_NO_WARNINGS、_WINSOCK_DEPRECATED_NO_WARNINGS,跳过新CRT对老版本不安全函数的强制检查
  • 手动修改少量不兼容代码:
    • 若选择64位编译,注释所有_asm开头的x86内嵌汇编代码,MSVC 64位编译器不支持内嵌x86汇编,也可直接切换为32位编译跳过该修改
    • 把所有用于文件偏移、内存地址计算的long类型变量替换为INT_PTR或int32_t,避免不同架构下变量长度不一致导致的运行异常

所有配置修改完成后直接生成解决方案即可得到可执行文件,将生成的程序放到原版Quake 2游戏根目录即可正常运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 09:54:02