在Windows7下玩老游戏,会出现花屏的现象。这个现象的原因是Win7的DirectDraw的256色调色板的兼容性问题,据说是默认配置下,程序无法获取调色板锁。

在Windows7下玩老游戏,会出现花屏的现象。
这个现象的原因是Win7的DirectDraw的256色调色板的兼容性问题,据说是默认配置下,程序无法获取调色板锁。
一个简单的解决方法是杀掉explorer进程,估计这样就会停止桌面主题修改调色板。
但是这不是一个一劳永逸的办法。
方法一:
经过在网上搜索,发现有这样一个解决方案。
DirectDraw有一个注册表项,用于开启兼容模式,位于
HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftDirectDrawCompatibility
(Win7 x64)
HKEY_LOCAL_MACHINESOFTWAREMicrosoftDirectDrawCompatibility
(Win7 x86)
在这个注册表项下添加需要启用兼容模式的exe,如:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftDirectDrawCompatibilityStarCraft116]
"Name"="Starcraft.EXE"
"ID"=hex:ca,89,65,49
"Flags"=hex:00,08,00,00
(Win7 x64)
就可以使得对应的程序运行于兼容模式下。
这三个键值中,Name是程序的文件名,Flags是常量,而ID是程序的时间戳。
以星际争霸1.161为例,我们可以使用CFF Explorer打开Starcraft.exe,然后在Nt Headers-File Header中找到TimeDateStamp一项,发现其值为496589CA。
将该整数倒过来写作低字节优先的形式(little-endian),就是ca,89,65,49,这就是注册表中的ID值。
网上的有解决方案声称HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftDirectDrawMostRecentApplication下的ID记录的就是上一次运行的游戏的时间戳。
但是我验证的时候发现不一致。
通过此方法,星际争霸已经可以在我的机器上正常运行。
此外,还有一种方法是通过Hook掉DirectDraw的函数来完成的,见
http://sol.gfxile.net/ddhack/
不过这个实现是通过软件方法来进行 索引->颜色 转换的,没有使用到显卡加速,在运行星际争霸时比较卡。
但这种方法只需要在程序文件夹下放入一个ddraw.dll的文件就可以实现,比较方便。
也许以后会有人通过DirectX或者OpenGL来模拟DirectDraw的功能,能够比较完善的解决这个问题。 

 方法二:
如果你用优化大师优化Windows7过关机速度,那么很不幸你的屏幕将会闪,也就是点文件夹的时候,作为背景的桌面会跳出来闪一下,同时左上角会出现notresponding。  

解决方法:  删除HKEY_USERS.DEFAULTDESKTOP下的HUNGAPPTIMEOUT以及WAITTOKILLAPPTIMEOUT子键

删除HKEY_CURRENT_USERHKEY_CURRENT_USERControlPanelHKEY_CURRENT_USERControlPanelDesktop下的HUNGAPPTIMEOUT,WAITTOKILLAPPTIMEOUT,WAITTOKILLSERVICETIMEOUT子键。

最新资讯
百度网盘单日/单次付费加速功能开始上线:一天5.9元

百度网盘单日/单次付

不久前,百度网盘在微博中透露,PC版百度网盘即将推出单日
IBM科学家发文驳斥谷歌量子霸权 称项目目标尚未实现

IBM科学家发文驳斥谷

据外媒报道,IBM科学家最近驳斥了谷歌研究人员所谓的已
三星手机平板等存指纹漏洞 中国银行暂关其网银功能

三星手机平板等存指纹

针对三星Galaxy S10指纹漏洞,中国银行发布公告暂关指纹
对话迅雷陈磊:5G或成历史上投资规模最大的技术迭代

对话迅雷陈磊:5G或成历

迅雷集团CEO、网心科技CEO陈磊在接受新浪科技采访时表
IAB报告:2019上半年在线广告支出579亿美元 增速放缓

IAB报告:2019上半年在

据外媒报道,美国互动广告协会(IAB)周一发布报告称,2019年
对话美图吴欣鸿:谈转型、股价、营收 与小米华为合作

对话美图吴欣鸿:谈转

吴欣鸿表示,可能会与华为智能硬件有合作;过去美图战线太
最新文章
win7系统网上观看的视频怎么不显示在C盘?

win7系统网上观看的视

win7系统网上观看的视频怎么不显示在C盘?win7在网页中
Win7怎么从开始菜单中删除文档图标?

Win7怎么从开始菜单中

Win7怎么从开始菜单中删除文档图标?Win7系统中想要删除
Win7系统电源按钮怎么修改为锁定?

Win7系统电源按钮怎么

Win7系统电源按钮怎么修改为锁定?Win7中想要将电源按钮
win7怎么设置屏幕显示和打印效果无色差?

win7怎么设置屏幕显示

win7怎么设置屏幕显示和打印效果无色差?一般我们打印出
win7系统在word文档中做目录的方法教程图解

win7系统在word文档中

word虽然不是一个专业的排版软件,但无论办公还是生活中
win7批处理命令怎么导出ip为文本格式?

win7批处理命令怎么导

win7批处理命令怎么导出ip为文本文件?win7系统ping电脑