这个问题可以使用DirectDraw的兼容模式解决:
- 打开注册表(运行regedit): 32位系统: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility
- 建立一个游戏对应的子键,名称是游戏exe的文件名部分。 比如说,一个游戏的可执行文件名是abc.exe,那么这个子键的名称是abc.
- 在这个子键下创建以下键值 Name 字符串 - 游戏exe的整个文件名,即abc.exe,不要包括路径。
64位系统: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility
Flags 二进制 - 键值是 00 08 00 00
ID - 二进制/DWORD - 这里的键值需要通过以下方法找到.
运行游戏,然后退出游戏,打开注册表,在以下位置找到
32位系统: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\MostRecentApplication
64位系统: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\MostRecentApplication
注意,在这里的有一个Name项,必须和你运行的游戏exe文件名相同。如果不同的话,你可能需要多运行游戏一会。
DirectDraw Compatibility Tool 1.01
W7DDPatcher
参考资料:
- http://www.gog.com/forum/general/windows_7_directdraw_compatibility_fixes_or_how_to_fix_the_strange_colors_in_game_x
- http://www.sevenforums.com/gaming/100379-how-i-fixed-corrupt-color-palette-some-old-games-windows-7-a.html?s=6d6b4845602c3ee685a18b1f58e207ac