是什么造成了 Windows 兼容性问题
发布网友
发布时间:2023-05-04 22:27
我来回答
共2个回答
热心网友
时间:2023-11-05 18:25
向来是程序兼容系统,不是系统兼容程序。每个软件都有个支持的操作系统列表,这代表开发者承诺软件在这些操作系统上可以跑。软件开发的时候,不可能兼容还没开始动手写的操作系统(如果有软件宣称自己兼容Windows 11现在就可以删掉了),所以如果在程序开发者不支持的Windows版本上运行出现兼容性bug是正常现象。
为了最大化向后兼容性,微软有一套和开发人员的合同,叫做Windows API的就是。微软在升级操作系统的时候,会尽量保证API仍旧可以正常工作。至于API之外的未公开细节,即使是在微软网站上发布过,只要没进Windows SDK文档,微软并不做任何兼容性上的保证。比如IE在7.0之前是每个顶层窗口一个页面,IE7引入标签页之后就不是了。继续兼容那些假定IE窗口结构永不会变化的程序会阻止IE的改进。病毒和杀毒软件这样底层的东西,因为依赖的就是这种未公开的实现细节,操作系统没有可能去做兼容。基本上,只要使用了未公开的实现细节,软件就有在下个礼拜二的补丁日挂掉的可能。为了避免过于经常出现这样的问题,微软通常是在主版本或者服务包升级的时候才做这种比较大的实现细节上的更改。对于程序员来说,应该尽量避免依赖于这样的实现细节,能用API就用API。
对于销量很大而用户忠诚度很高的软件中的影响用户升级的软件bug,微软提供兼容模式,模拟旧版本的Windows的部分行为,作为面向最终用户的临时解决方案。但是微软不可能一直这样惯着有bug的程序,这对提高整个生态环境中的软件质量没有帮助,比如不必要地要求管理员权限的程序造成用户较难不用管理员身份登录系统,增加用户被攻击的风险。兼容模式只针对开发者不愿意或者无法提供升级的场合,而且并不能解决所有的兼容性问题。
真正的兼容性问题的解决方案是软件作者开发个兼容性补丁,宣告自己的程序对新的系统的支持,例如Visual Studio 2005 Service Pack 1 Update for Windows Vista这样。对于病毒和杀毒软件这样底层的东西,基本上每个操作系统升级都会出问题,要升级一下才能支持新的系统。本来驱动程序也是这样每个操作系统升级都要出个补丁,因为DDK一直是升级的时候可以随便加减API参数这样,但是后来驱动开发者也开始向微软要向后兼容性了
热心网友
时间:2023-11-05 18:25
.软件兼容性问题引起电脑蓝屏
刚安装的系统,若驱动与硬件不兼容可能会导致蓝屏现象,建议安装硬件赠送光盘中的驱动(要与所用操作系统相符),且驱动没必要追求最新!
长时间使用电脑都没有出现蓝屏现象,而某天突然蓝屏了,这一般是由于电脑内灰尘过多导致内存问题(按下面提到方法解决)和软件与系统兼容性问题造成,可以回顾下最近新安装了什么软件,将这些软件卸载后在观察是否还蓝屏?或者使用Windows系统还原功能,直接将系统恢复至上一个还原点进行检测!
内存条接触不良或内存损坏导致电脑蓝屏
解决办法:清理机箱内灰尘,拔下内存条,用橡皮擦拭金手指,再重新插紧。
热心网友
时间:2023-11-05 18:25
向来是程序兼容系统,不是系统兼容程序。每个软件都有个支持的操作系统列表,这代表开发者承诺软件在这些操作系统上可以跑。软件开发的时候,不可能兼容还没开始动手写的操作系统(如果有软件宣称自己兼容Windows 11现在就可以删掉了),所以如果在程序开发者不支持的Windows版本上运行出现兼容性bug是正常现象。
为了最大化向后兼容性,微软有一套和开发人员的合同,叫做Windows API的就是。微软在升级操作系统的时候,会尽量保证API仍旧可以正常工作。至于API之外的未公开细节,即使是在微软网站上发布过,只要没进Windows SDK文档,微软并不做任何兼容性上的保证。比如IE在7.0之前是每个顶层窗口一个页面,IE7引入标签页之后就不是了。继续兼容那些假定IE窗口结构永不会变化的程序会阻止IE的改进。病毒和杀毒软件这样底层的东西,因为依赖的就是这种未公开的实现细节,操作系统没有可能去做兼容。基本上,只要使用了未公开的实现细节,软件就有在下个礼拜二的补丁日挂掉的可能。为了避免过于经常出现这样的问题,微软通常是在主版本或者服务包升级的时候才做这种比较大的实现细节上的更改。对于程序员来说,应该尽量避免依赖于这样的实现细节,能用API就用API。
对于销量很大而用户忠诚度很高的软件中的影响用户升级的软件bug,微软提供兼容模式,模拟旧版本的Windows的部分行为,作为面向最终用户的临时解决方案。但是微软不可能一直这样惯着有bug的程序,这对提高整个生态环境中的软件质量没有帮助,比如不必要地要求管理员权限的程序造成用户较难不用管理员身份登录系统,增加用户被攻击的风险。兼容模式只针对开发者不愿意或者无法提供升级的场合,而且并不能解决所有的兼容性问题。
真正的兼容性问题的解决方案是软件作者开发个兼容性补丁,宣告自己的程序对新的系统的支持,例如Visual Studio 2005 Service Pack 1 Update for Windows Vista这样。对于病毒和杀毒软件这样底层的东西,基本上每个操作系统升级都会出问题,要升级一下才能支持新的系统。本来驱动程序也是这样每个操作系统升级都要出个补丁,因为DDK一直是升级的时候可以随便加减API参数这样,但是后来驱动开发者也开始向微软要向后兼容性了
热心网友
时间:2023-11-05 18:25
.软件兼容性问题引起电脑蓝屏
刚安装的系统,若驱动与硬件不兼容可能会导致蓝屏现象,建议安装硬件赠送光盘中的驱动(要与所用操作系统相符),且驱动没必要追求最新!
长时间使用电脑都没有出现蓝屏现象,而某天突然蓝屏了,这一般是由于电脑内灰尘过多导致内存问题(按下面提到方法解决)和软件与系统兼容性问题造成,可以回顾下最近新安装了什么软件,将这些软件卸载后在观察是否还蓝屏?或者使用Windows系统还原功能,直接将系统恢复至上一个还原点进行检测!
内存条接触不良或内存损坏导致电脑蓝屏
解决办法:清理机箱内灰尘,拔下内存条,用橡皮擦拭金手指,再重新插紧。
热心网友
时间:2023-11-05 18:25
向来是程序兼容系统,不是系统兼容程序。每个软件都有个支持的操作系统列表,这代表开发者承诺软件在这些操作系统上可以跑。软件开发的时候,不可能兼容还没开始动手写的操作系统(如果有软件宣称自己兼容Windows 11现在就可以删掉了),所以如果在程序开发者不支持的Windows版本上运行出现兼容性bug是正常现象。
为了最大化向后兼容性,微软有一套和开发人员的合同,叫做Windows API的就是。微软在升级操作系统的时候,会尽量保证API仍旧可以正常工作。至于API之外的未公开细节,即使是在微软网站上发布过,只要没进Windows SDK文档,微软并不做任何兼容性上的保证。比如IE在7.0之前是每个顶层窗口一个页面,IE7引入标签页之后就不是了。继续兼容那些假定IE窗口结构永不会变化的程序会阻止IE的改进。病毒和杀毒软件这样底层的东西,因为依赖的就是这种未公开的实现细节,操作系统没有可能去做兼容。基本上,只要使用了未公开的实现细节,软件就有在下个礼拜二的补丁日挂掉的可能。为了避免过于经常出现这样的问题,微软通常是在主版本或者服务包升级的时候才做这种比较大的实现细节上的更改。对于程序员来说,应该尽量避免依赖于这样的实现细节,能用API就用API。
对于销量很大而用户忠诚度很高的软件中的影响用户升级的软件bug,微软提供兼容模式,模拟旧版本的Windows的部分行为,作为面向最终用户的临时解决方案。但是微软不可能一直这样惯着有bug的程序,这对提高整个生态环境中的软件质量没有帮助,比如不必要地要求管理员权限的程序造成用户较难不用管理员身份登录系统,增加用户被攻击的风险。兼容模式只针对开发者不愿意或者无法提供升级的场合,而且并不能解决所有的兼容性问题。
真正的兼容性问题的解决方案是软件作者开发个兼容性补丁,宣告自己的程序对新的系统的支持,例如Visual Studio 2005 Service Pack 1 Update for Windows Vista这样。对于病毒和杀毒软件这样底层的东西,基本上每个操作系统升级都会出问题,要升级一下才能支持新的系统。本来驱动程序也是这样每个操作系统升级都要出个补丁,因为DDK一直是升级的时候可以随便加减API参数这样,但是后来驱动开发者也开始向微软要向后兼容性了
热心网友
时间:2023-11-05 18:25
.软件兼容性问题引起电脑蓝屏
刚安装的系统,若驱动与硬件不兼容可能会导致蓝屏现象,建议安装硬件赠送光盘中的驱动(要与所用操作系统相符),且驱动没必要追求最新!
长时间使用电脑都没有出现蓝屏现象,而某天突然蓝屏了,这一般是由于电脑内灰尘过多导致内存问题(按下面提到方法解决)和软件与系统兼容性问题造成,可以回顾下最近新安装了什么软件,将这些软件卸载后在观察是否还蓝屏?或者使用Windows系统还原功能,直接将系统恢复至上一个还原点进行检测!
内存条接触不良或内存损坏导致电脑蓝屏
解决办法:清理机箱内灰尘,拔下内存条,用橡皮擦拭金手指,再重新插紧。