winevdm:在 64 位 Windows 上跑 Win16 程序,GitHub 累计 3506 Star

64 位 Windows 早已拿掉原生 16 位子系统。想直接打开 Windows 3.1 时代的安装包或工具,系统往往会提示无法运行。winevdm(仓库里也常写作 OTVDM)把改过的 Wine Win16 层搬到 64 位 Windows 上,让旧的 16 位 Windows 可执行文件能在本机启动,而不必再开一整台 32 位虚拟机。

查询日 2026-10-27:GitHub 累计 3506 Star、208 Fork;最近一次可见 commit 时间为 2026-10-24(UTC)。数据来自 GitHub API。[1]

它解决什么

自 Windows x64 起,系统不再提供 NTVDM,Win16 程序无法直接双击运行。winevdm 的做法是:自带 CPU 仿真(因为 64 位 Windows 不能改 LDT),再用基于 Wine 的 Win16→Win32 转换与中继例程,把旧程序的调用接到现代系统上。README 写明支持 Windows 1.x、2.x、3.0、3.1 等 16 位 Windows 程序。[1]

安装后,既可以把 .exe 拖到 otvdm.exe / otvdmw.exe 上跑,也可以通过 install.inf 注册,让部分 Win16 安装程序被系统识别后走替代安装路径。配置集中在 otvdm.ini。[1]

怎么用(按 README)

  1. 从 Releases 下载稳定包,或从 AppVeyor CI 取最新构建。

  2. 若提示缺少 VCRUNTIME140.dll,先装 Visual C++ 2017 可再发行组件(32 位)。

  3. 运行安装快捷方式,或对 install.inf 右键选择「安装」。

  4. 直接打开 Win16 程序,或把程序拖到 otvdm.exe。

  5. 若 Windows Update 清掉相关注册表项,按 README 再装一次;卸载可用仓库提供的 uninstall.reg。[1]

README 也提到:程序内带有不完整的 DOS 仿真,纯 DOS 程序更建议用 DOSBox 或 MS-DOS Player;部分旧程序会往 %WINDIR% 写 .ini,winevdm 做了目录重定向。[1]

作者与维护

仓库所有者为 GitHub 用户 otya128,说明里写的是「改过的 winevdm,移植到 64 位 Windows」。稳定版标签目前可见 v0.9.0(发布于 2023-09-15);主分支在 2026-10-24 仍有合并 PR(例如 BSS 段清零相关修复),说明项目仍在修兼容问题。[1]

技术栈(据仓库公开信息)

项

内容

语言

C(GitHub 主语言)

授权

GPL-2.0

构建

Visual Studio 2017 / CMake

核心组成

CPU 仿真、Wine 系 Win16→Win32 转换、convspec 生成的中继、DOS 仿真(不完整)、句柄转换与兼容修补

项目活跃度(查询日 2026-10-27)

指标

数值

Star

3506

Fork

208

Contributors

104(按 GitHub contributors API 分页末页推算账号数)

累计 commit

约 4082(commits API rel=last)

最近 commit 日期

2026-10-24(UTC)

开放 Issue

352

最新稳定 Release

v0.9.0(2023-09-15)

数据来自 GitHub API;Contributors 按账号统计,含历史 Wine 相关提交者,不等于当前维护团队人数。[1]

如何参与

仓库开放 Issues 与 Pull Requests。README 未单独附详细 CONTRIBUTING.md;常见路径是提交兼容性 Issue,或按本地 Visual Studio / CMake 流程编译后提 PR。讨论与缺陷跟踪见仓库 Issues 页。[1]

Hacker News 在 2026-10-27 再次挂出该仓库;有评论指出 winevdm「已经出了一段时间」,这次讨论更像是旧工具重新被翻到前台。[2]

仓库入口:https://github.com/otya128/winevdm

资料与使用说明

  1. Star / Fork / Issue / commit / Contributors 均按 2026-10-27 查询的 GitHub API 快照;未实测安装与兼容性。

  2. 稳定包 v0.9.0 与 master 最新提交不同步,日常兼容修复以最新构建与 Issue 为准。

  3. DOS 仿真不完整,纯 DOS 场景请按 README 改用 DOSBox 等专用工具。

  4. 旧软件可能含安全风险,运行前自行评估来源。

来源

[1] otya128/winevdm 及 README、GitHub API(repos / commits / contributors / releases),查询日 2026-10-27。

[2] 16-bit Windows on 64-bit Windows | Hacker News,2026-10-27。

#winevdm #Win16 #Windows兼容 #开源 #GitHub

排序方式 :

成为第一条评论!

Nobody's responded to this post yet. Add your thoughts and get the conversation going.