小鸟向前飞 2016-11-01 07:16 采纳率: 0%
浏览 1569
已结题

COM组件调用动态库路径问题

目前在做一个OFFICE的插件,是用COM组件实现的。
在COM组件中要load另外一个DLL,但是在load这个DLL时总是返回127错误。
现在的情况是OFFICE是一个路径,COM组件与DLL在另外一个目录下。

COM组件加载DLL的代码不贴了,就是LoadLibrary和GetLastError。
新建了一个空的DLL,什么代码也没写,让COM去加载,还是127错误。

感觉是路径问题,但是尝试把当前路径加到path中,不起作用。
把dll复制到system32或者SysWOW64下也不行。
把dll复制到office安装路径也不行。

现在不知道该怎么处理了。

请问大家在使用COM组件加载DLL时遇到过这样的问题吗?

另外,新建一个空的DLL,用win32程序可以加载,但是COM加载也是127错误。

代码如下:

 HINSTANCE hInstance = LoadLibrary(_T("E:\\code\\test\\2016103101\\Debug\\DLLTest1.dll"));
    DWORD dRet = GetLastError();
  • 写回答

3条回答 默认 最新

  • oyljerry 2016-11-01 07:30
    关注

    用depends查看一下DLL的依赖,一般是有其他依赖的DLL缺少,导致加载失败

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 5月15日

悬赏问题

  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法