百科问答小站 logo
百科问答小站 font logo



是什么造成了 Windows 兼容性问题? 第1页

  

user avatar   minmin.gong 网友的相关建议: 
      

一般都是系统API的行为改变了造成的。不同版本的win,API的实现可能完全不同。如果没测试好兼容性,就可能出现程序的兼容问题。而且,大部分时候其实是app的问题。

举几个我遇到的例子。

1. 某国产著名下载软件,一开始在vista上只要一选择下载目录就crash。结果是SHBrowseForFolder的参数结构体中的某个变量没有清零。xp不管这个,vista+开始用这个变量,结果就crash了。加上ZeroMemory解决。

2. 我的引擎KlayGE,几个月前发现在Win10上鼠标输入不正常,无法响应按键释放。后来发现原先WM_INPUT里的设备句柄总是等于枚举时候的句柄,Win10+变成另一个句柄值。MSDN上确实也是那么说的,以前能用只是运气好。照着改后恢复正常。

3. Quake 2,一开始在xp上运行不正常。原来代码里判断os版本号的时候,只考虑了95/98/2k等。把==改成>=后恢复正常。

4. 解谜游戏《不可思议的机器》,在xp上有一关用官方答案也过不去。原因在与xp上计时器精度提升到1ms,而不是95/98的16ms。而游戏是照着16ms调的时序,就不行了。

更惨的情况可能是有些app的bug,但因为app实在太流行,它们即便改了用户也不一定会更新。这时候只能把系统改成顺应那个bug。一个典型的例子就是DivX Player。它在调用DX的时候lock了纹理的一小部分,却写入了整张纹理。结果知道现在,DX runtime的代码里仍然有判断DivX Player的代码,如果遇到是它就总是lock整张纹理。


user avatar   jiangshengvc 网友的相关建议: 
      

今天巴拿马的表现有点像王者荣耀里的程咬金:一个字干

孙子兵法曰:先不败而后求胜。像墨西哥很聪明,不跟你硬刚,我对后防有信心我就拖着和你打防守反击,只要你打不穿我我就不会输,几脚远射威胁也不大,让我抓住你后场漏洞我还有可能赢,这也是以弱胜强的常见措施。

但是巴拿马不干,就是喜欢跟你刚,防守反击是什么?不存在的。然而双方进攻效率是不一样的,显然这种对攻并不理智。不仅如此,巴拿马在对抗上也经常出现上头的动作,吃了5张黄牌,给下一场留下了巨大隐患。

踢足球也要靠脑子,不明智的战术布置加上技不如人,结果显而易见。但是巴拿马作为一直新进入世界杯的球队,为我们带来了一场并不乏味的比赛,他们敢打敢拼的精神也是值得鼓励的,期待他们更精彩的表现。要是国足能这样表现出对胜利的渴望,输了咱也不丢人啊。




  

相关话题

  为什么 Windows 笔记本很少有光线传感器? 
  如何在 Surface 中安装 XP 系统? 
  为什么 Windows 系统 Program Files 这个经常用来装软件的目录,名称中有个空格? 
  如何看待华为终端 2020 年除了手机、平板和电脑外全线搭载鸿蒙系统? 
  写一个操作系统内核有多难?大概的内容、步骤是什么? 
  为什么 Windows 上还没有普及 64 位的软件? 
  为什么 Windows 操作系统开很多应用和游戏都不会杀后台? 
  有无可能基于某一版安卓,独立于谷歌开发升级系统,经过几代迭代后,最终和安卓发展成两个相对独立的系统? 
  为什么SSD能够使成熟的操作系统的体验获得如此多的提升? 
  如何看待Windows 11中仍然有Windows 3.1的组件,是否说明前者是后者的套壳? 

前一个讨论
英国脱欧、特朗普上台是否意味着全球格局剧变的开始?
下一个讨论
知乎上有哪些持续产出高质量原创回答,回答未附公众号链接,其主页无联系方式的用户?





© 2025-06-26 - tinynew.org. All Rights Reserved.
© 2025-06-26 - tinynew.org. 保留所有权利