找不到过程入口点

时间:2013-12-31 08:09:30

标签: c++ visual-studio dll

我有一个程序正在编写program.exe,它会加载一个dll lib.dll。当我在调试模式下运行program.exe时,一切正常。当我尝试在发布模式下运行时出现错误:

  

The procedure entry point ... could not be located in the dynamic link library lib.dll

当我在依赖性walker中打开dll时,会出现具有所有相同奇怪符号的精确函数。我查看了visual studio中的模块窗口,以确保我没有从错误的目录加载dll但事实并非如此。我使用相同的编译器(Visual Studio 2012)编译了dll和exe,因此这也不是问题。可能导致这种情况的原因是什么?

修改

我将lib.dll转换为静态库,一切正常。我放弃了!

2 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,在我的情况下,这是因为我的计算机上安装了两个版本的同一个库。

最后,问题是当我的PATH指向旧的DLL时,我正在将我的程序与新的LIB文件链接。当库版本号未包含在LIB或DLL文件名中时,可以很容易地混合版本。

答案 1 :(得分:0)

在运行发布版本时,尝试在Release版本的属性页面中设置库的路径。