无法定位程 序输入点于 msvcr t.dl l相关 问题解决方 法(图)
安全中国www.a n q n.c o m 更新时间:2009-10-21 00:32:44 责任编辑:池天
热点
我发现这个问题是在每次打开八戒桌面小工具时会提示“Deskwidget:DeskWidget.exe -无法找到入口无法定位程序输入点_except_handler4_common于动态链接库msvcrt.dll上” 遂上网查了资料。发现这是个系统性的问题。 以前八戒软件能正常使用不知道这段时间是卸载了什么软件还是装了什么东西导致八戒不能用了。
网上的方法如下可以解决每次弹出“无法定位”对话框的问题
这是由于sp3加载的驱动造成的只需要将C:\WINDOWS\system32\dwmapi.dl l重新命名一下即可以解决在system32中找到dwmap i.dl l他的标签居然表明来自V i s ta RTM试着把“dwmap i.dl l”重命名一下注改成任意文件名如dwmap.dl l 。问题解决。
不过我从没有修改飞信安装文件夹下的dwmap i.d l l却能正常使用飞信没有出现网上所说的每次弹出“无法定位”对话框的问题真的很奇怪。究竟是什么原因导致这个问题的呢为什么windows\system32下的dwmapi.dll动态链接库可以随便修改
这不会导致系统问题吗
也许下面的文章能解答一些疑问
原文地址http://windows.chinaitlab.com/administer/770224_2.html
浅谈Windows环境软件故障调试与分析
大家好我是Eric今天我将与大家一起分享一个软件故障的调试与分析案例希望给大家提供一个解决Windows下软件错误的基本分析思路和供参考的一类解决方法。看完本例您将会初步了解到Dll Entry Point错误的一些基本知识也将接触到像Winbdg、 Dependency Walker一类的专业调试、分析工具软件的基本使用在这里我也和大家一起分享并探讨。本例中出现错误的软件是中国移动飞信2008版客户端具体现象是每次双击图标启动该程序时总会收到一个错误信息对话框——标题为“FetionFX.exe - Entry Point Not Found” ,内容为“The procedure entry point _except_handler4_commoncould not be located in the dynamic link library msvcrt.dll. ” 。如下图所示
以前在台式机中文版Microsoft Windows XP Professional with Service Pace 2上使用这个客户端时并没有出现该问题但是今年9月份我将笔记本计算机的操作系统安装为Microsoft Windows XP Professional with Service Pace 3的英文版然后于10月初安装飞信客户端之后就一直存有这个问题直到今天我才有一块集中的空余时间来分析解决。之前我搜索过百度但是答案均是“系统缺少msvcrt.dll下载一个就好了”或者是“msvcrt.dll版本不正确下载一个替换即可” 为了图简便我也试过但是根本不奏效。可是我发现没有解决也可以正常使用飞信只是每次要弹出这个错误消息所以也没急着管。哈哈~幸好今天解决掉了心得是解决软件故障不能浮于表面欲发掘内在问题和根本原因还得自己架设环境手动分析 因为软件太多了错误的种类也太多了一切还是得具体情况具体分析阿~~下面我们一起来看看整个过程吧 全部的分析调试过程不止下面的这些但是经过解决这个问题 以下整理出来的思路应该是最简短并且能够找到问题原因的
首先我们让该问题重现即双击飞信客户端的桌面图标让其弹出该错误对话框。错误提示出现了我们先不急着点击“OK(确定)”按钮而是启动一个调试程序。 本例中使用著名的Microsoft Windbg工具进行调试分析然后在“File(文件)”菜单
中选择“Attach to a Process. . . (附加到一个进程)” 选择当前的飞信客户端的进程“FetionFX.exe” 。这里之所以要选择Attach to a Process就是因为我们要将调试器跟踪到当前这个产生错误的进程然后从内存中实时察看相关的线程堆栈甚至API函数的调用。 Windbg中还支持其他的几种类型的调试须根据具体情形按需选择。附加到该进程之后的结果如下图所示
然后我们可以在图中清晰地看到 当系统加载到“c:\Program Files\China Mobile\Fetion\dwmapi.dll”时挂起就是图中的"Warning: Break-in time out, suspending. "在Windows中的表现也就是弹出了上述的错误对话框并且我们还没有点击“确定”按钮于是程序暂时挂起。因此我们可以判断 FeionFX.exe启动时加载的位于“c:\Program Files\China
Mobi le\Fetion\” 目录下的dwmapi.dl l在执行某个函数过程的时候遇到了错误。那么究竟是什么样的函数呢根据错误对话框的信息我们可以初步猜测是MSVCRT.dll中的_except_handler4_common。于是我们需要查找一下当前进程中有关该过程的现状所以执行"x msvcrt!_except_handler*"命令返回的结果也在上图中的底部。在Windbg中 x是查找符号的命令可以用来查找全局变量的地址或过程的地址。 比如x kernel32!*显示Kernel32.dll中的所有可见变量数据结构和过程。 *号是通配符代替任意的字符串为了查找全部的我们需要使用该通配符。 其实如果你执行“xmsvcrt!_except_handler4_common”你会发现没有任何结果也就是找不到其实这也就是出现该错误的原因我们后文分析。因此退一步不输入"4_common"查找所有_except_handler过程
结果告诉我们进程中msvcrt.dll存有的过程有_except_handler2以及_except_handler3而恰恰没有_except_handler4。鉴于以上返回结果我们可以初步断定错误的起因是因为程序不能执行MSVCRT.DLL中的_except_handler4_common过程而且原因是当前缺少这个。此时我们需要借助Microsoft Dependency Walker进行辅助分析并且确认。
我们启动Microsoft Dependency Walker打开该dwmapi.dll可以发现该DLL文件的运行将会首先调用MSVCRT.DLL而且下图中也标示出来了在当前调用的MSVCRT.DLL中缺少一个函数"_except_handler4_common"这起好与我们看到的错误现象相以及Windbg分析的结果吻合。如下图所示
Webhosting24是一家始于2001年的意大利商家,提供的产品包括虚拟主机、VPS、独立服务器等,可选数机房包括美国洛杉矶、迈阿密、纽约、德国慕尼黑、日本、新加坡、澳大利亚悉尼等。商家VPS主机采用AMD Ryzen 9 5950X CPU,NVMe磁盘,基于KVM架构,德国机房不限制流量,网站采用欧元计费,最低年付15欧元起。这里以美国机房为例,分享几款套餐配置信息。CPU:1core内存...
易探云怎么样?易探云是国内一家云计算服务商家,致力香港服务器、国内外服务器租用及托管等互联网业务,目前主要地区为运作香港BGP、香港CN2、广东、北京、深圳等地区。易探云服务器均选择当下热门线路,比如CN2 GIA、BGP线路、CN2线路等,所有云主机支持月付,并且首月优惠,年付优惠,优惠后香港沙田云服务器/独立ip/香港CN2线路,每月仅18元,188元/年。点击进入:易探云官方网站地址1、香港...
官方网站:点击访问特网云官网活动方案:===========================香港云限时购==============================支持Linux和Windows操作系统,配置都是可以自选的,非常的灵活,宽带充足新老客户活动期间新购活动款产品都可以享受续费折扣(只限在活动期间购买活动款产品才可享受续费折扣 优惠码:AADE01),购买折扣与续费折扣不叠加,都是在原价...