百科问答小站 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张黄牌,给下一场留下了巨大隐患。

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




  

相关话题

  这个开源的6千行UI框架,能打败QT,MFC吗? 
  微软英特尔是怎样配合开发操作系统和处理器的,处理器如何按照操作系统设计,操作系统如何利用处理器特性? 
  为什么微软要开发 Windows 10 这个系统? 
  用Android系统做出的游戏主机为何与XBOX、PS的游戏体验相去甚远? 
  2020 年,使用的主力电脑还是 XP 系统是什么体验? 
  微软宣布 Windows 11 将会在 10 月 5 日正式推送,你会第一时间更新「尝鲜」吗? 
  为什么我的电脑还没有被推送win11? 
  Windows 11 有升级中文字体渲染吗? 
  为什么总有人极力推荐使用命令行操作而非图形界面? 
  写一个操作系统内核有多难?大概的内容、步骤是什么? 

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





© 2024-12-22 - tinynew.org. All Rights Reserved.
© 2024-12-22 - tinynew.org. 保留所有权利