求教无法定位程序输入点于动态链接库问题

sosott 2013-12-26 10:02:49
各位大侠
用VS2008新建一个程序,这个程序调用用vc6.0编写的dll文件,进行了如下操作:
1、把dll,lib,h文件复制到程序目录和dbug目录中;
2、在项目-->属性-->链接器-->输入-->附加依赖项中添加对应的lib文件;
3、在工程中添加对应的h文件;
执行编译,结果提示为"无法定位程序输入点xxx()于动态链接库.dll"问题,
请教各位大侠,我这种操作方法还遗漏了什么?怎么会出现这种问题?
...全文
13719 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
太上绝情 2016-08-18
  • 打赏
  • 举报
回复
是不是在xp上。vs2012就不支持xp了
赵4老师 2016-08-18
  • 打赏
  • 举报
回复
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下; 所以要注意: 在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。 且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll
zgl7903 2016-05-11
  • 打赏
  • 举报
回复
有可能.lib 和 DLL 不匹配, 或者缺少依赖DLL等 DependsView 查看下DLL 和 EXE 注意红色部分
朵朵111 2016-05-10
  • 打赏
  • 举报
回复
解决了吗?我也遇到了这种问题。不知道怎么解决
sosott 2013-12-26
  • 打赏
  • 举报
回复
都复制到工程所在的目录了啊,还是不行
oyljerry 2013-12-26
  • 打赏
  • 举报
回复
还是有dll文件漏掉了。找不到
zhuobattle 2013-12-26
  • 打赏
  • 举报
回复
用Depends看下你编译的exe和那个vc6的dll,看是否正确,问题立马找到
5t4rk 2013-12-26
  • 打赏
  • 举报
回复
xxx是个函数吧。 一种情况就是依赖的dll又依赖了其他的dll 一种就是平台之间的函数差异。 比如我曾遇到过这种问题。 无法定位程序输入点_except_handler4_common于动态链接库msvcrt.dll上 最近,多种软件都出现了一个启动时的错误提示 “无法定位程序输入点_except_handler4_common于动态链接 库msvcrt.dll上”。 出现这个提示情况是:Windows Xp 系统; 软件包括:window live writer 2009, windows messenger 2009, firefox 3.5 等非常新的版本。 这个提示出现后,点击确定,并不影响程序的使用。这个问题出现的原因,其实微软自己的问题。可谓是微软 的Vista 后遗症吧。 在 Vista 系统里,有个挺酷的功能,就是“程序缩略图”,有点3D效果,这个功能,调用了 dwmapi.dll 这 个库,而 dwmapi.dll 又引用了 msvcrt.dll 中的 _except_handler4_common 功能。 然而,在XP系统中,系统自带的 msvcrt.dll 和 Vista 中的 msvcrt.dll 版本不同, 并没有这个 _except_handler4_common ,结果就出现了启动程序时,遇到的 “无法定位程序输入点 _except_handler4_common于动态链接库msvcrt.dll上”的错误提示。 解决方法: 将 c:\windows\system32 下的 dwmapi.dll 改名,例如:改为 dwmapi.dll.bak。

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧