我有一个较旧的应用程序在 Windows 7-64 位计算机上启动时崩溃。根据互联网,根本原因显然是我的内存太多,并且当应用程序看到超过 4 (3.5) GB 的 RAM 时会出现一些错误。
我可以使用命令行参数启动 exe 并告诉应用程序我的内存较少吗?或者创建一个内存受限的启动器进程?从命令行、批处理脚本到 win32 代码,任何东西都可以。
我知道这是一个不太可能的尝试,但我欢迎任何建议,谢谢。
答案1
右键单击快捷方式,选择Properties
,然后选择Compatability
。检查Run this program in compatibility mode
并选择应用程序设计运行的操作系统。
答案2
为了避免过度浪费资源,请在虚拟机中运行 Windows 并使用 VM 控制 RAM 数量。同样,这是过度解决问题。我这样做的唯一原因是不必对我的电脑进行任何更改,并且如果我希望代码编写者能修复,并且如果简单的答案(David Schwartz 答案)不起作用。
答案3
如果设置兼容模式不起作用,那么您可以尝试:
取出一根 RAM,这样你的 RAM 就会变少
请注意,对于双通道三通道 RAM,您分别需要 2 或 3 条 RAM 的倍数才能工作。
如果这不起作用,您可以尝试在 VM 中运行该程序。除了 MS VM 和 XP 模式之外,还有其他 VM 选项。流行的免费 VM 软件是 虚拟盒
如果你没有兼容操作系统的副本,那么你也可以尝试在虚拟机上安装 Linux,或者在你的机器上安装 32 位 Linux,然后在 Wine 下运行该程序