程序移植,dll存在,dll加载失败。

温水煮青蛙come-on 2012-11-30 02:52:58
xp+vc6写的程序
我将源程序全部拷贝到server2008 r2(64位。未装vc6及vs等编译环境)下,不能运行。
报错:dll加载失败。126-----这个错误是我自己控制的。
要加载的dll确实放在源程序目录下,debug及release下都有,我运行的是debug版本的exe。
...全文
153 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 8 楼 tiger9991 的回复:
不会是Release版和Debug版的DLL混淆吧? 版主说的那种情况我遇到过。解决方法是携带VC6.0的MFCDLL。这个是有用的
应该不是mfc的类库。我上代码 m_hCreateDll=LoadLibrary("CreateVixDll.dll"); if (m_hCreateDll!=NULL) {}else {AfxMessageBox(_T("加载Dll失败。")+e);} 是报这个错。
  • 打赏
  • 举报
回复
引用 7 楼 oyljerry 的回复:
引用 6 楼 mwj_88 的回复: 本帖最后由 oyljerry 于 2012-11-30 21:58:23 编辑 引用 5 楼 hfz8867879 的回复:引用 4 楼 mwj_88 的回复: 但是编译运行就没错。 编译的时候又不会去运行,那些语法啥没错误就行的~关键是本身很多DLL,32和64的就不同,能兼容就奇怪了呢~我用ado,64写好的拿到32下各种异……
应该不是mfc的类库。我上代码 m_hCreateDll=LoadLibrary("CreateVixDll.dll"); if (m_hCreateDll!=NULL) {}else {AfxMessageBox(_T("加载Dll失败。")+e);} 是报这个错。
傻X 2012-11-30
  • 打赏
  • 举报
回复
不会是Release版和Debug版的DLL混淆吧? 版主说的那种情况我遇到过。解决方法是携带VC6.0的MFCDLL。这个是有用的
oyljerry 2012-11-30
  • 打赏
  • 举报
回复
引用 6 楼 mwj_88 的回复:
本帖最后由 oyljerry 于 2012-11-30 21:58:23 编辑 引用 5 楼 hfz8867879 的回复:引用 4 楼 mwj_88 的回复: 但是编译运行就没错。 编译的时候又不会去运行,那些语法啥没错误就行的~关键是本身很多DLL,32和64的就不同,能兼容就奇怪了呢~我用ado,64写好的拿到32下各种异常的 ……
一种可能性,那就是运行时缺少对应的VC6的MFC类库文件等
  • 打赏
  • 举报
回复
引用 5 楼 hfz8867879 的回复:
引用 4 楼 mwj_88 的回复:
但是编译运行就没错。
编译的时候又不会去运行,那些语法啥没错误就行的~关键是本身很多DLL,32和64的就不同,能兼容就奇怪了呢~我用ado,64写好的拿到32下各种异常的

编译+运行吗,我在本机上直接运行exe也报这个错。
64到32不兼容是正常的~~都是向上兼容
九州剑王 2012-11-30
  • 打赏
  • 举报
回复
引用 4 楼 mwj_88 的回复:
但是编译运行就没错。
编译的时候又不会去运行,那些语法啥没错误就行的~关键是本身很多DLL,32和64的就不同,能兼容就奇怪了呢~我用ado,64写好的拿到32下各种异常的
  • 打赏
  • 举报
回复
但是编译运行就没错。
  • 打赏
  • 举报
回复
引用 1 楼 hfz8867879 的回复:
MFC42UD那些东东也都有了么

我发现在我机器上直接运行exe也报这个错。
  • 打赏
  • 举报
回复
引用 1 楼 hfz8867879 的回复:
MFC42UD那些东东也都有了么
第一次运行时说没有MFC..DLL,我给加上了。 然后再运行就是少一个createvix.dll 这个dll是别的公司的。但确实存在。
九州剑王 2012-11-30
  • 打赏
  • 举报
回复
MFC42UD那些东东也都有了么

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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