2024年3月1日发(作者:)
软件开发与应用Software
Development
And
Application电子技术与软件工程Electronic
Technology
&
Software
EngineeringWin32程序在WinlO系统中兼容问题的解决方案马雪婷(吉林大学计算机科学与技术学院吉林省长春市130000
)摘
要:本文通过对当前WinlO系统的兼容性问题研究,具体分析了
Win32程序在Winl0系统中兼容问题的解决方案,以供大家参考。
关键词:WinlO系统;Win32程序;兼容性虽然Win7系统被公认为是兼容性最好的PC操作系统,但是
因为硬件和软件技术的不断发展,随着微软对Win7技术支持的停
止以及硬件厂家不再为新硬件产品提供Win7驱动,WinlO系统已
经成为PC操作系统的主流,目前市场上的新装电脑,无论是品牌
整机还是组装的兼容机,几乎都己经采用64位WinlO系统了。由于历史的积累,目前尚有大量32位应用软件在服役,Win7
或更早期平台下开发出来的软件中有相当一部分在WinlO下运行时
会出现不同的兼容问题。有不少用户(特别是行业软件用户)甚至
会因为无法处理这个问题而只能继续使用旧电脑。旧版本应用软件
在新版操作系统中的兼容问题将会长期大量存在,这类兼容问题在
实际中一般会有如下几种表现形式:无法运行安装程序、可安装但
是运行软件无反应或报错、运行软件出现异常配置、能进入软件但
是无法具体使用软件的某些或全部功能等。为了使这些存在兼容问题的旧版本软件能继续为我们的生产、
生活服务,可采用一些设置方法来解决,下面介绍一些具体的可行
方案。**
快師式 »8^
安全
W 以n舶录本8»玄试运行ire* 式B以義皿氏运iis个MWindow* XP (Service Pack 2)SI□用640 x 480 Wl酬啦行□ *用全IB优化□以■理员躺运行如序KiSatDPliftl1设置兼容模式运行程序当应用软件运行出现兼容问题时,大家最先想到的就是进行兼 容模式设置。在程序的图标或快捷方式的图标上点鼠标右键,选“属 性”-“兼容性”,选中“以兼容模式运行这个程序”,然后尝试 KM fiWM选择列表(图1)中提供的兼容模式(一般地说,选Windows XP Service Pack 2/3成功率最高),选择后点“应用”・“确定”,再 运行此程序看一下!很多软件经过此设置后可正常运行。图1文件<F) IWT(A) M(V) W«)(H)•呻才T*其 Q2进行用户账户控制设置^witinnatB-艸计・驱・卜-M..为计HSU存4»旳用户砂5WH5行■曲陶P支全设■ iswgy WinlO系统对用户账户控制方面进行了较大的调整,因此在运 行某些软件的时候可能会因为默认的权限不足而失败,可尝试按下 面的说明先进行账户控制设置,然后再运行软件。用户账户控制设 置需要在“本地组策略编辑器”中进行,而在WinlO HOME版中, 此功能默认是关闭的,需要先经过如2.1节设置启动该功能,非 HOME版本的其他WinlO系统则无需此步设置,直接跳到2.2节操 作即可。” .钦件设・|Windows 设.卜_系俛设widows Bjmti文件中的证书砂用于歌件... KKiSI:可透子系傥e*用K名I•本(@砂关机)* eaMiswaw-*1安金设.—9 %户负路* I♦-q一用户顾分配,以安全IS囲宦义i«E(SDDl)a注!R示的翊RM、、PBPWPfflM标凍用户升禮示行为.式中■理员的血升easii示的没育定义不複示,.唯3R应用程序安SWH#示提升... fBPWPSM将文件IG注册厦写入邸化丽用户位鼻 ..用PWPSW仅!■升安II在安全位lffiguiAtces应用程序 ■、用户辙户控制金示升时切唤對安金東面eeffl 已陕用# BMW j an用|J 島圾安全WindcwsDe'-用户離户控制以刼员財蟆式运行所W貝 用户*用于内■■直员户的管理员加<»■式2. 1开启“本地组策略编辑器”功能先新建一个文本格式文件,文件名随意,扩展名改为“cmd”, 文件内容写入如下:.允许UlAccess应用程序在不使用安全《36的 应用程序桂祢S IP安金蕖裕.在本iftd■于innagQas只ai升名井验证的可si行文件„ 对安全iAiIJS圖8行敢宇SDUSlJi可输己SI用eefflBBS 己e用域成员:对安全通iMMR进行般林名(M»8Jie)..域成员:计■长便用删30天@echo offpushd “ %~dpO ”dir /b C:WindowsservicingPackagesMicrosoft-Windows- GroupPolicy-ClientExtensions-Package~3*.mum > /b C:WindowsservicingPackagesMicrosoft-Windows- GroupPolicy-ClientTools-Package~-3*.mum » /f %%i in ( 'findstr /i . 2A>nul * ) do dism /online / norestart /add-package: ° C:WindowsservicingPackages%%iMpause存盘关闭后,在此cmd文件图标上点鼠标右键,选“以管理员 身份运行”,会出现一个CMD黑色窗口,当出现“请按任意键继续” 后,点任意键关闭CMD窗口,就已经开启了本地组策略编辑器功 能了。这一步操作会随用户的系统情况持续一段时间,有可能几秒, 也可能会几分钟,需要耐心等待。图22.2进行用户账户控制设置按住键盘上Win+R,调出Windows的运行对话框,输入“gpedit. msc”后回车,调出本地组策略编辑器后,参看图2,展开''计算 机配置” -“ windows设置”-“安全设置” ■“本地策略”-“安全选项”, 找到右侧框中2处,都设置为"已禁用”,然后把电脑重启一下即 可完成设置。设置完成后需要重启一次系统,再尝试重新运行程序看是否正 常!经过此操作,一些无法正常运行的软件就会正常了,通过QQ 的远程协助功能远程操作WinlO的电脑时,无法取得完全远程操作 权限,也可用此方法修复。3恢复“仅为基本windows程序和服务启用DEP”58 电子技术与软件工程软件开发与应用Electronic Technology & Software EngineeringSoftware Development And Application能”-“设置”・“数据执行保护” ■“仅为基本Windows程序和服 «K9t« Mt务启用DEP''-“应用”・"确定”,如图3所示。/ •nmwiwy(O£P)4解决程序运行中出现配置死循环.仪沁* Windows IbrKSfiM O€P(n当运行某个应用软件时,有时候会弹出一个第三方软件的配置 下沁帧"O€P(U)提醒,只有完成此配置,软件才能继续下去,这种情况一般是系统 注册表的问题。除了 WinlO外,其它操作系统,比如Win7或XP中, 也经常会有类似问题,但是Win7或Xp遇到这种问题时,用户可 选择按其提示完成配置,或者点“取消”按钮临时跳过此提示,软 件还是可以正常运行的,但是在WinlO系统中遇到这个问题,无法 进行配置,点''取消”后,软件就出现一个死循环界面卡住不动了 (如图4),只有重启电脑才会消除此界面,这样的话,软件也就 无法运行了,这应该是WinlO的一个BUG,遇到这种问题,可参 看如下办法处理:•■支All于*«旳 D£P.(1) 到控制面板中,卸载需要配置的程序,如果该程序不是 必须,卸载后最好别再安装,如果仍需要这个程序,卸载后重新安 as装一次该程序,再运行软件看是否正常,如果己经不再岀现配置提 示,那么就正常了,如果还是出现配置提示,参看下一步骤解决;图3(2) 下载Windows Installer软件,该软件是微软旗下一款用 来管理和配置软件服务的工具,该软件安装时无法选择安装位置, 默认安装路径为 C:Program Files (x86)Windows Installer Clean Up, 安装后,在开始菜单的程序组中可找到快捷方式(名字叫Windows Install Clean Up),但是桌面上不会有快捷方式。运行该程序后, 在其列表中选择出现配置异常的程序项,然后点Remove按钮(图 5),操作成功后正常运行软件就可以了。5处理硬件驱动兼容问题对一些有加密保护的应用软件来说,如果其在运行中出现软件 兼容问题,则除了上面提到的原因以外,还可能是由硬件的驱动问 题引起的。目前的软件保护机制中,最常用的也就是USB加密锁(硬 加密)以及基于硬件特性码的注册码(软加密)的加密方式,现在 的WinlO系统本身已经集成了大量的硬件兼容驱动,也就是说当操 作系统安装后,一般无需特意安装硬件原版驱动,系统也可以正常 的运行。但是这些兼容驱动与硬件厂家提供的原版驱动还是有一定 区别的,对无法在WinlO下正常运行的有加密要求的应用软件,还 Contaumg further w* m«ke permanent change* to your system You may 需要考虑此类因素。need to remstal some or al appfecati>ns on your system that used the Windows instalef technotogy to be nstoled If you do not want to 对硬加密软件来说,可能有关的驱动包括加密锁自身驱动、主 proce« please press the IxT button now Cbooeng ■Remove' w« make 板芯片组驱动以及USB驱动,对采用软加密的应用软件来说,可 the penmnent chanoeshstaled Products能有关的驱动主要是芯片组驱动以及硬盘(SATA)驱动。(Al User*) Adobe Acrobat 9 Pro - CbneseS [9 3 2] a如果这些有加密的应用软件在WinlO中存在兼容问题而无法运 (Al Umt*) Apple Software Update (2 6 3 1](Al Users) App«cMo Venfier x64 External Package (10 1 16299 15J行的话,可先到其主板官网按主板的准确型号下载WinlO系统对应 (Al User*) Appieaton Venfier x64 External PackaQe (10 1 17134 12] Utcr») Apptcaton Wnfter x64 External Ptcfcage (10 117763 132)的、最新的、原版的驱动程序安装,然后再尝试运行软件看是否正常。 mguage Pae* SmpHed Orese(Al Users) D«9nostx»Hub_Colect»nService 116 0 28621] 6结束语(Al Umt«) Goo* Update Helper (1 3 35 441](Al Users) icecap_cotection_neutral [16 0 28622](Al U计算机的硬件技术差不多一直在遵照摩尔定律迅猛发展,但是 mts) cecap_co*ecton_x64 (16 0 28622](Ai Umt*> onresources (16 0 28622] 软件的更新却很难跟上硬件的发展速度,不论是个人用的应用软件 (Al Users) cec*p_co*ectionre«ource«x64 (16 0 28622) (Al Users) Me Ch<»e< Devce Software [10 1 1 45] 还是企业用的应用软件,绝大部分都是在Win7以及之前的操作系 (Al User*) irrtelTraceProfiefProxy (150 18198 01)统平台上开发的,因此在新的操作系统下的兼容问题无法避免,有 SlectAI | £tefAl |Remove I Egl些专业性很强的应用软件厂家可能已经停止服务,但是这些软件仍 在被大量用户所使用,经过合理的设置使这些软件能够在新的系统 图5中正常运行,具有非常大的现实意义,实际应用中存在的兼容问题 处理方法还有很多(比如可考虑WinlO系统加载虚拟机方式等), Windows 的 DEP(Data Execution Prevention)功能简称"数据执 不同的软件处理方法也不尽相同,本文仅抛砖引玉,供大家参考。行保护”,是Windows系统的一项安全机制。此功能在系统中有2 个选项,初装系统后,默认选项为“仅为基本windows程序和服务 参考文献启用DEP”,当安装一些软件后,默认选项可能会被修改,从而造 [1]郭建伟.顺畅更新Windows 10 [J].网络安全和信息 成第三方软件运行异常。因此,当软件运行出现兼容问题时,可检 化,2018, (4): 99-100.测此参数设置,如果发现其设置并非默认选项,可尝试恢复为系统 默认,此项设置后需要重启系统生效。作者简介具体的设置方法是:马雪婷( 2000-),女,吉林大学计算机科学与技术学院计算机科 鼠标右键点桌面“此电脑”图标•“属性”•“高级系统设置”■“性 学与技术(网络与信息安全)专业本科生。59


发布评论