女皇萌雨 发表于 2013-10-12 23:11:43

程式相容性设定 解决黑屏花屏当机等问题

本帖最后由 道禪無 于 2013-11-18 17:51 编辑

导致程式相容性问题的原因一般有以下几种:


数据位元宽度不符
色彩位元深度不符
荧幕解析度过大/缩放异常
显示加速模式不符
区域语言不符
(欢迎补充)

可能导致黑屏、花屏、破碎、撕裂、残影、异线、重叠、扭曲、错位、当机等一系列问题

现予以逐条分析

一 数据位元宽度不符

操作系统从古至今共有4位/8位/16位/32位/64位(现在已有128);程式有8位/16位/32位/64位。
现行的Windows作业系统为32位和64位。

8位程式一般需要模拟器运行;32位程式与全部现行系统兼容;64位程式只能作用于64位系统。
Windows 7 和Windows 8 x86可以在启用16位元程式支援之后执行;
Windows 8 x64不可能以任何形式直接执行16位元程式。

解决方法:虚拟机;多系统


二 色彩位元深度不符

色彩系统从古至今共有1位/2位/3位/4位/5位/6位/8位/12位/15位/16位/18位/24位/30位/32位/36位/48位

程式色彩位元深度有8位/16位/24位/32位,即RGB色彩空间下的256色/65536色/16777216色/16777216色+256Alpha透明度;对于CMYK色彩空间则有所不同,比如24位仅有1030402色。
现行的Windows作业系统为32位色,扫描仪和打印机为48位色。

Windows 7 的 Aero Glass Theme 磨砂玻璃主题调用了Alpha通道,致使大部分较早的程式不能正常运行。

解决方法:使用简化的颜色模式(256/65536)执行;禁用桌面主题;禁用视觉效果;改用Windows 7 Basic Theme


三 荧幕解析度过大

常见早期程式解析度为640*480/800*600/1024*768/1280*1024。

荧幕像素点距较小,而其解析度大出程式的全屏幕解析度,缩放时性能较低的显示卡即不能将图像正确映射到荧幕。

解决方法:禁用缩放;在低解析度下执行;降低荧幕解析度


四 显示加速模式不符

图像的渲染模式分为硬体和软体;根据多媒体编程接口分为OpenGL和DirectX;其中DirectDraw等与现有作业系统相容性较差。

目前已知AMD显示卡硬体加速等级过高会导致过度渲染。

解决方法:以视窗模式执行;禁用场间映画;关闭或降低硬体加速;切换加速模式。


五 区域语言不符
详见 https://www.hawkaoe.net/bbs/thread-113669-1-1.html


其他

应用程式非法调用系统/硬体预置内存地址时会提示内存读写错误、程式崩溃


总结

对于任何出现问题的程式,在其相容性选项标签页逐项设定测试;若软体附带检测程式,尝试执行之。




附带暴雪公司的检测工具













页: [1]
查看完整版本: 程式相容性设定 解决黑屏花屏当机等问题