我在 Windows 7 中运行调色板模式(256 色)的 Allegro 4.2.4 有问题。我在 Internet 上找到了杀死资源管理器的解决方案,它确实有效,但是期望最终用户在尝试玩游戏时会杀死资源管理器是荒谬的.
然后我找到了用破解版本替换 DDraw.dll 的解决方案,但它也不起作用 - DDHack 只会导致应用程序启动后根本不显示任何屏幕。
然后我找到了添加注册表黑客的解决方案:
Windows Registry Editor Version 5.00
;This file has been created with DirectDraw Compatibility Tool (http://crappybitter.livejournal.com/tag/ddc_tool)
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\MyApp]
"Name"="MyApp.exe"
"ID"=dword:4E7B8A88
"Flags"=hex:00,08,00,00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\MyApp]
"Name"="MyApp.exe"
"ID"=dword:4E7B8A88
"Flags"=hex:00,08,00,00
但遗憾的是它也不起作用,调色板一直闪烁着所有彩虹色。
除了将整个应用程序移植到不同的编程库之外,我还有其他解决方案吗?是否可以在不触摸调色板的情况下修复 Vista/W7 上的 DDraw 问题?如果没有,什么库会给我调色板编程(我正在做需要调色板的游戏)在 Vista/W7 上没有这样的问题?
我知道另一种解决方案 - 我可以将 Allegro 4.2.4 应用程序编译为 DOS 应用程序并在 DosBox 中运行。可悲的是,但我现在能想到的就这些了……
提前感谢其他解决方案!