
什么是动态链接库:英文缩写为DLL,它并不是可执行的文件,它是能向多个程序提供公用代码函数和数据的封装库,程碧轮侍序所需要的一些函数和数据被事先封装在DLL文件中,当程序运行时可以主程序需要调用这些DLL动态链接库。
无法定位程序输入点 于动态链接库上的原因:
1.用户误 *** 作不小心将程序安装目录中的动态链接库DLL文件删除,导致程序启动时无法找到必要的文件而报错(这种情况并不是普遍存在的,但也是原因之一)。
2.电脑感染木马病毒,虽然如今大多数杀毒软件已经趋于人性化,一旦发现某些木马病毒绑定系统程序,还是有不少杀毒软件采用一刀切的方式,直接 将这些被恶意绑架的系统程序删除(其中就可能包含DLL动态链接库文件),导致系统或应用程序缺少了必要的DLL动态链接库,从而出现“无法定位程序输入 点 于动态链接库上”的问题的(这种情况较为普遍,多数网友都是此原因造成的)。
3.在软件或游戏在线更新时,本该被正常写入或覆盖的DLL动态链接库悔吵文件因为意外的断电、重启、写入桐差错误等原因没有下载更新成功,导致软件或游戏在运行过程中缺少必要的DLL动态链接库文件而报错。
无法定位程序输入点 于动态链接库上的解决办法:
步骤一:下载安装主流杀毒软件(卡巴斯基、金山毒霸、360安全卫士、瑞星等等),更新病毒库之后全盘杀毒。
步骤二:找出提示“无法定位程序输入点 于动态链接库xxxx.dll上”错误的信息,将系统提示缺少的xxxx.dll记录下来。
步骤三:百度搜索您已经记录下来的xxxx.dll信息,在百度搜索中输入xxxx.dll(加上DLL后缀),尝试通过网络下载 xxxx.dll(目前大多数系统动态链接库DLL文件都可以通过网络下载到),将下载到得DLL保存到U盘或指定文件目录内,假如是系统程序 (如:iexplore.exe、系统驱动程序加载、media play播放器等)报错,在重启电脑按下F8键,进入系统安全模式,将下载到得DLL文件复制到C盘中windows目录下的System32文件夹中, 然后再重新启动,便可以解决此问题;如果是游戏程序缺少DLL,下载之后需要将DLL复制到该游戏目录下的指定位置(由于游戏分类众多,所需DLL和位置 各有不同,小编无法详细说明,这需要您在实践中摸索)。
尝试三个步骤都无法解决无法定位程序输入点 于动态链接库上的问题,您应该考虑重装系统、软件或游戏了。
已经在网上找个3种方法:
1>
如果遇到这样的问题.可以搜索脱壳后的程序中的"RestoreLastError",并将其改为"SetLastError",不足的位数用0x00补齐即可.
或者在使用ImportREC等修复工具的时候直接指定为SetLastError.
原因:WindowsXP下修复Import表的时候ImportREC会将ntdll!RtlRestoreLastWin32Error
重定位到kernel32!RestoreLastError,而这个函数在以前的windows系统下是不存
在的.经过检查,这和SetLastError实际上是同一个函数.都被转移到对ntdll!RtlRestoreLastWin32Error的调用.
win7下是可以使用OD的。1、打开百度搜索win7 od软件。
2、根据需要派锋点击相应的页面下载即可。
OD,软件名称,反汇编工具OD=OllyDebug,一个新的动态追踪工具,将IDA与SoftICE结合起来的思想,Ring 3 级的调试器,己代替SoftICE成为当今最为流行的调试解密工具了。同时还支持闷汪插尘罩晌件扩展功能,是目前最强大的调试工具。基本上,调试自己的程序因为有源码,一般用vc,破解别人的程序用OllyDebug。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)