DLL需要LIB,但正在寻找DLL

时间:2018-08-01 10:55:00

标签: visual-c++ dll lib

在我的来源中,我有:

    #pragma comment(lib, "ldv32.lib")

最初是:

    #pragma comment(lib, "ldv32")

当我构建然后尝试注册DLL时,它将失败:

Output from regsvr32

我使用“ Dependency Walker”查看了DLL,发现它正在尝试打开LDV32.DLL,因此我编辑了项目并修改了编译指示。已清理并重建的项目,但是仍然失败,并且“ Dependency Walker”仍然报告DLL正在寻找LDV32.DLL

如何解决此问题,已经检查了路径和项目构建,指定了LIB的位置,但是为什么要查找DLL而不是LIB?

1 个答案:

答案 0 :(得分:1)

ldv32.lib是导入库。它解决了DLL模块中使用的外部问题。但是它仅实现了小存根。当模块加载LoadLibrary时,ldv32.lib中的某些代码会尝试加载实现实际功能的DLL ldv32.dll

您应该查找Echolon OpenLDV DLL“ ldv32.dll”,并将其复制到从中加载进程的文件夹中。如果您共享程序或DLL,请确保包含该DLL。

您还可以检查是否存在静态LIB。在这种情况下,您可以与之链接。