我正在尝试在 Win7 32 位操作系统中运行一个 dos/4gw 应用程序。我收到以下错误消息,
DOS/4GW fatal error (1307):内存不足
当我在 WinXP 32 位操作系统中运行相同的应用程序时,它运行良好,没有任何问题。
dos/4gw 应用程序是使用 Watcom C 编译器构建的。
mem 命令显示以下可用内存,
655360 字节总常规内存
MS-DOS 可用的 655360 字节
580640 最大的可执行程序大小
16777216 字节总 EMS 内存
16777216 字节空闲 EMS 内存
32505856 字节总连续扩展内存
0 字节可用的连续扩展内存
15580160 字节可用 XMS 内存
驻留在高端内存区的 MS-DOS
从上面可以看出内存不足1MB。但是我的程序需要的不止于此。基本上我需要扩展我的 DOS 内存以获得超过 1MB 的内存来运行我的 dos/4gw 应用程序。
有人可以帮助解决这个内存问题吗?
谢谢!
-阿南德
最佳答案
问题的答案是doynax发送的回复:
“我相信在最新版本的 Windows 中有一个垫片将可用的 DPMI 内存限制为 32 MB,对于更古老的软件来说,这些软件无法准备好如此大量的 RAM。您可以尝试在 HKEY_LOCAL_MACHINE 下创建一个 DpmiLimit 键\SYSTEM\CurrentControlSet\Control\WOW 在注册表中以字节限制作为 DWORD 来调整它”
关于c - DOS/4GW fatal error (1307) : not enough memory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42303118/