2015年2月22日星期日

Windows 7下玩Windows XP时代游戏花屏的问题

微软已经停止了支持Windows XP;Windows 7是系统升级的最好选择。虽然Windows 7能够运行绝大多数的Windows XP程序,但是,仍然有一些程序会多多少少有点问题。特别是针对XP推出的经典游戏,比如说超时空英雄传说之北方密使帝国时代2。在运行这些游戏的时候,一个比较多的问题就是花屏。颜色突然之间变得惨不忍睹,水和草地的颜色从256色降到了4色的样子。然而,即便是使用Windows 7提供的XP兼容模式也无法解决这个问题。

这个问题可以使用DirectDraw的兼容模式解决:

  1. 打开注册表(运行regedit):
  2. 32位系统: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility
    64位系统: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility
  3. 建立一个游戏对应的子键,名称是游戏exe的文件名部分。
  4. 比如说,一个游戏的可执行文件名是abc.exe,那么这个子键的名称是abc.
  5. 在这个子键下创建以下键值
  6. Name 字符串 - 游戏exe的整个文件名,即abc.exe,不要包括路径。
    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 

没有评论: