无法定位程序输入点 于动态链接库上的解决方法
- 格式:doc
- 大小:33.50 KB
- 文档页数:1
VS2010+WinXP+MFC程序⽆法定位程序输⼊点于动态链接库1、问题描述原开发环境:Win7 64位旗舰版,VS2010,ThinkPad T460出现问题:⾃⼰开发的MFC程序在WinXP环境下⽆法正常运⾏,弹框“⽆法定位程序输⼊点InitializeConditionVariable于动态链接库kernel32.dll”重新搭建开发环境:WinXP SP3 专业版,VS2010,GIGABYTE某motherboard(原谅办公室没别的空闲主机了)问题依旧存在:重新编译通过,但运⾏时还是弹框“⽆法定位程序输⼊点InitializeConditionVariable于动态链接库kernel32.dll”,我在程序⼊⼝下的断点,都没有执⾏到。
2、原因(1)如果并不是⾃⼰开发的程序:⼀般就是不兼容,但也有可能是别的原因。
(2)如果想让⾃⼰开发的程序在WinXP系统上兼容:不要低估微软,更不要⾼估寄⼏。
⼀般没有别的乱七⼋糟的原因,只是因为WinXP 系统的kernel32.dll中并没有InitializeConditionVariable。
之前在Win7上开发的时候,你或者MFC程序调⽤了kernel32.dll中的InitializeConditionVariable,所以在XP上根本运⾏不了。
⼀般是多线程处理不当造成的。
3、解决⽅法(1)如果并不是⾃⼰开发的程序:想要尝试解决的话,请参照百度出来的⽅法,但是⼀定要提前准备好WinPE系统(U盘启动盘),并且对原kernel32.dll⽂件进⾏备份!因为替换kernel32.dll⽂件极有可能使你的操作系统开不开机。
(2)如果想让⾃⼰开发的程序在WinXP系统上兼容:最好在WinXP上搭建开发环境,再调试代码。
最好直接Google,中⽂资料质量⼀般。
不要问我怎么知道的o(≧⼝≦)o虽然只有两个答案,但都是精华。
参考链接:⾼票回答中的代码可能并不能解决问题,第⼆个答案中,答主贴了⾃⼰的⼀篇希望对你萌有所启发,反正是启发到我了(∩_∩)对于我的程序,我定位到出问题的地⽅是托盘,托盘涉及到的东西⽐较底层。
无法定位程序输入点于动态链接库上的解决方案————————————————————————————————作者:————————————————————————————————日期:2无法定位程序输入点于动态链接库上的解决方案有不少网友反映,在电脑上打开程序时会弹出“无法定位程序输入点于动态链接库上”的提示框,让网友非常烦恼。
经过分析,我们总结出了以下解决方案,可以彻底解决“无法定位程序输入点于动态链接库上”。
当无法定位动态链接库时,一般会出现什么现象?现象一:电脑开机启动时,会弹出“无法定位动态链接库”提示框。
现象二:运行网络游戏或单机游戏时,会弹出“无法定位程序输入点于动态链接库上”提示框。
现象三:运行某个软件时,显示无法定位程序输入点。
什么是动态链接库?动态链接库英文缩写为DLL,它并不是可执行的文件,它是能向多个程序提供公用代码函数和数据的封装库,程序所需要的一些函数和数据被事先封装在DLL文件中,当程序运行时可以主程序需要调用这些DLL动态链接库。
无法定位程序输入点于动态链接库上是什么原因造成的?一、电脑感染木马病毒导致的现在很多木马病毒都会替换系统文件,将真正的系统文件改名,比如WININET.dll、Msvcrt.dll 、usp10.dll、midimap.dll、lpk.dll等都会被木马重命名。
很多杀毒软件将木马清除后却没有将被修改的系统文件名改回来,这样打开程序调用系统文件时就会出现“无法定位程序输入点于动态链接库上”的提示框。
比较典型的病毒是绑架类木马,它是一种新型破坏性极强的木马,与传统病毒不同,它是通过绑架系统文件dll实现开机启动。
该木马病毒主要表现:电脑运行非常慢。
开机很长一段时间才能进入桌面。
程序运行很缓慢。
主流杀毒软件无法正常打开,并且重装系统也无法解决问题。
虽然现在绝大多数杀毒软件已经趋于人性化,一旦发现某些木马病毒绑定系统程序,还是有不少杀毒软件采用一刀切的方式,直接将这些被恶意绑架的系统程序删除(其中就可能包含DLL动态链接库文件),导致系统或应用程序缺少了必要的DLL动态链接库,从而出现“无法定位程序输入点于动态链接库上”的问题。
cass9.1安装弹出无法定位程序输入点s4drv_reboot于动态链接库mksetup.dll上的问题解决方法
最近安装cass9.1有点小问题,主要表现:
win7-64系统,安装了CAD2006-64位正常,接下来安装cass9.1,安装到最后一步弹出窗口“instwi23.exe无法找到入口,无法定位程序输入点s4drv_reboot于动态链接库wksetup.dll上”的提示,点确定安装完成后虽然可以进入cass9.1,多数功能使用正常,但在再点击显示顺序后置的时候图像没有后置,在工具——光栅图像——图像纠正时出错,点确定cass9.1就退出了(有提示忘记了)、。
解决办法,
1、开始——运行——输入services.msc——确定——找到Application 开头的(有5个)全部点击设为启动、自动;选择Alipay security service 也选择启动、自动。
2、百度下载mksetup.dll
(/share/link?shareid=683076428&uk=875952359 &fid=1588265665),然后重启动按F8进入安全模式,再把mksetup.dll 复制粘贴到c:/windows/system32里面即可。
3、重新点击cass9.1安装程序,选择更新安装,一直到完成,不会再出现前面那个弹出窗口提示了,在进入cass9.1使用一切功能正常。
itunes打不开无法定位程序输入点
itunes打不开无法定位程序输入点 iTunes显示无法打开
与动态链接库CFNetwork.dll上点击确定后出现对话框itunes was not installed correctly. please reinstall itunes.Error 7(windows error 127)但是我安装了好多次都是。
需要把系统中关于itunes的程序都删除,包括itunes的播放器,大约有5-6个文件,然后到官网上下载最新的itunes版本重新安装。
发生这种问题一般是和itunes的播放器有关。
在控制面板的添加/删除程序那里,把Apple application support卸载掉,也把iTunes卸载掉,再把QuickTime也卸载掉,然后把整个Apple application support文件夹(C:\Program Files\Common Files\Apple\Apple Application Support)都删除。
重启电脑后,再重新安装iTunes。
到到控制面板-卸载程序(添加删除程序)中彻底卸载iTunes及其相关组件
卸载顺序:
1、iTunes
2、QuickTime
3、Apple Software Update
4、Apple Mobile Device Support
5、Bonjour
6、Apple 应用程序支持
能找到的都卸载,找不到的不用管,然后重启电脑,暂时关闭杀毒软件和防火墙,重新安装苹果官网下载的iTunes。
《荣誉勋章:战士》无法定位程序输入点的解决方法MedalofHonor:Warfighter 更多《荣誉勋章:战士》无法定位程序输入点的解决方法MedalofHonor:Warfighter相关信息请点击这里获得类别:游戏攻略
类目:第一人称射击
很多玩家在辛辛苦苦的下载完荣誉勋章战士,在进入游戏时系统显示无法定位程序输入点GetCurrentProcessorNumber 于动态链接库KERNEL32.DLL上”之类的错误如下图:
遇见以上的问题玩家首先要知道自己的系统是否为XP系统,因为荣誉勋章战士是不支持XP系统的。
想要进入游戏那么只有更换win7系统或者vista系统,接着检查自己的电脑配置
如果玩家的配置及系统都是支持荣誉勋章战士的玩家遇见以上问题,那么就是因为玩家电脑缺少游戏运行所需的组件,
比如VC++,famework等,只要安装相应的组件游戏就能运行了。
到网上找对应系统的VC++版本就能运行游戏了。
建议方法:
1、打开360安全卫士、软件管家、搜索VC++,下载一个VC++ 2010
2、百度搜索VC++ 2010,找个下载,然后安装
本文章由吃喝玩乐网/收集整理。
无法定位程序输入点Dininstalldriview于动态链
1、在看到该错误提示框后,记录下框里提示的那个.dll名称,就是缺少这个程序。
2、下载并放至电脑某一位置上。
3、在该.dll名称的程序下载好后,返回到电脑桌面点击开始菜单,并找到重启一项,点击它。
4、接着,在我们点击了重启选项后,这时我们电脑进入关机重启状态,一进入到开机状态时我们要不间断按下F8键,然后我们会打开进入到我们电脑的安全模式选项。
5、在安全模式选项中,随即进入安全模式下的电脑桌面,然后这里我们打开我的电脑,并点击C盘。
6、在我们点击打开C盘后,接下来我们依次打开windows文件,并在它的文件中找到system32且点击打开进入。
7、最后,找到我们刚下载的那个.dll后缀的程序文件,把它复制到该文件选项下即可。
故障现象:
电脑开机后提示报错无法定位程序输入点GetNuanceRelatedData于动态链接库CommFunc.dll上
原因分析:
系统遭到病毒或木马感染导致,操作失败导致dll文件丢失,升级部分软件导致出现该问题。
解决方案:
下载安装主流杀毒软件(NOD32、卡巴斯基、小红伞、Avast、McAfee、诺顿、瑞星、金山毒霸等),更新病毒库之后全盘杀毒。
系统重启后还是有报错按照下面操作。
1. 通过百度下载需要的CommFunc.dll文件;
2. 重新启动电脑,按F8键,进入安全模式;
3. 将下载的CommFunc.dll文件拷贝到 C:windowssystem32 文件夹(目录)下;
4. 再重新启动电脑,便可以解决此问题。
上述操作无法解决也可以用360安全卫士或金山卫士里的dll修复工具,尝试修复系统有可能修复成功。
如果以上操作无效,建议您全面备份硬盘数据后重新安装系统。
备注:
如果是游戏程序缺少DLL,下载之后需要将DLL复制到该游戏目录下的指定位置(由于游戏分类众多,所需DLL和位置各有不同。
在XP系统上出现⽆法定位程序输⼊点K32GetProcessMemoryInfo的解决⽅案VC2012升级补丁5.0之后,编译出来的程序发现在XP系统⽆法定位程序输⼊点 K32GetProcessMemoryInfo于动态链接库kernel32.dll之上。
之前程序⼀直在XP上安装正常,今天测试组的同事突然发现,新发布的版本不能在XP上使⽤,这个问题⽐较奇怪,因为以往的版本都是没有问题的。
为什么会突然出现这个问题呢?⼀开始就去查找是否所有⼯程都使⽤V110_XP来编译,找完所有⼯程都没出错。
最后才想到近来升级VC2012的Update5.0的补丁,再打包编译之后,才发现XP的电脑不能使⽤了。
经过查找分析,发现是如下问题:这是由于GetProcessMemoryInfo在不同系统版本号不同导致的,官⽅说明如下:RemarksStarting with Windows 7 and Windows Server 2008 R2, Psapi.h establishes version numbers for the PSAPI functions. The PSAPI version number affects the name used to call the function and the library that a program must load.If PSAPI_VERSION is 2 or greater, this function is defined as K32GetProcessMemoryInfo in Psapi.h and exported in Kernel32.lib and Kernel32.dll. If PSAPI_VERSION is 1, this function is defined as GetProcessMemoryInfo in Psapi.h and exported in Psapi.lib and Psapi.dll as a wrapper that calls K32GetProcessMemoryInfo.Programs that must run on earlier versions of Windows as well as Windows 7 and later versions should always call this function as GetProcessMemoryInfo. To ensure correct resolution of symbols, add Psapi.lib to the TARGETLIBS macro and compile the program with -DPSAPI_VERSION=1. To use run-time dynamic linking, load Psapi.dll.解决⽅案如下:只需要在#include <psapi.h>引⽤前添加复制代码代码如下:#ifndef PSAPI_VERSION#define PSAPI_VERSION 1#endif#include <psapi.h>#pragma comment(lib,"Psapi.lib")看来微软已经不⽀持XP系统了,因此所有发布的新版本软件已经不再测试XP的兼容性了。
安装Qtcreator时出现⽆法定位程序输⼊点_except1于动态链接
库MSVCR120。
开始不知道怎么回事⼀直出现⽆法定位程序输⼊点,_except于动态链接库MSVCR120.dll上,重新下了⼏个Qt版本同样出现这样的问题,后来在⽹上查了⼀下
这两天回⽼家了,没事打算在笔记本上装个QT,系统是新做的WIN7 64位,结果试了⼏个版本,死活装不上,总是出现如下错误:
"⽆法定位程序输⼊点_except1于动态链接库MSVCR120.dll"
⽹上查说是那个动态链接库的问题,结果看了⼀下系统⾥⾯好像是有啊,在⽹上下载了替换也不⾏,后来找到官⽹,重新下了最新版本的visual C++2013运⾏库,再安装QT,结果没有问题了。
看来以后提⽰缺少什么动态链接库不能简单的下载替换了。
VC2013运⾏库(Visual C++ 2013运⾏库)x86官⽅版下载最新版本,
重新安装就可以了。
无法定位程序输入点于动态链接库上的解决方法这段时间很多网友提出“无法定位程序输入点于动态链接库上”题,针对这一问题给出答案,但愿大家通过这篇文章都能解决掉此问题。
什么是动态链接库:英文缩写为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和位置各有不同,小编无法详细说明,这需要您在实践中摸索)。
尝试三个步骤都无法解决无法定位程序输入点于动态链接库上的问题,您应该考虑重装系统、软件或游戏了。