Backwards-Compatibility
如何讓舊的 16 位 Windows 遊戲在 64 位 Windows 上執行?
嘗試在 Windows 7 64-bit上玩一些舊的 Windows 95 遊戲,我收到以下錯誤:
此文件的版本與您執行的 Windows 版本不兼容。檢查您電腦的系統資訊以查看您是否需要 x86(32 位)或 x64(64 位)版本的程序,然後聯繫軟體發行商。
嘗試以兼容模式執行應用程序無效。我猜這些遊戲以某種方式依賴於我的系統中缺少的 32 位 dll,我想知道是否有其他人遇到過類似的問題,並且能夠就可能的解決方案或變通方法提供見解。
筆記:
- 我已經檢查了這個問題,但它討論了系統要求而不是實際的應用程序呼叫。
- 有問題的遊戲是Metal Marines和Fire Fight,但我相信更多的遊戲可能會受到影響。
- 上面的錯誤消息不是特定於遊戲的,它直接來自 Windows 本身。
實際上,這些遊戲很可能依賴於舊的 16 位 DLL。許多早期的 32 位軟體在某些功能上依賴於舊的 16 位 DLL,因為它們完成了這項工作,它們沒有用於軟體的性能關鍵部分,也不需要尋找 32 位版本. (例如,直到最近,安裝軟體通常是 16 位的,以至於 Win7 實際上檢測到它並默默地用它自己的 64 位版本的舊 DLL 替換)。
你看過Windows 7 的 XP Mode嗎?這會在您的 Windows 7 中執行 32 位 Windows XP 的完整副本,讓舊程序在 XP 中執行,而該程序根本不知道它在 64 位 Win7 機器上,並且由於它全部集成,您幾乎不會注意到它正在執行經驗值。