【问题标题】:DLL needs LIB, but looking for DLLDLL需要LIB,但是要找DLL
【发布时间】:2018-08-01 10:55:00
【问题描述】:

在我的来源中,我有:

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

原来是这样的:

    #pragma comment(lib, "ldv32")

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

我使用“Dependency Walker”查看 DLL,我可以看到它正在尝试打开 LDV32.DLL,因此我随后编辑了项目并修改了 pragma。清理并重建项目,但它仍然失败,并且“Dependency Walker”仍然报告 DLL 正在寻找 LDV32.DLL

我该如何解决这个问题,我检查了路径和项目构建,指定了 LIB 的位置,但为什么它在寻找 DLL 而不是 LIB?

【问题讨论】:

    标签: visual-c++ dll lib


    【解决方案1】:

    库ldv32.lib 是一个导入库。它解析在您的 DLL 模块中使用的外部变量。但它只实现了小存根。当使用 LoadLibrary 加载模块时,ldv32.lib 中的一些代码会尝试加载实现实际功能的 DLL ldv32.dll。

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

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

    【讨论】:

    • 最终实际问题需要重新安装具有管理员权限的OpenLDV SDK,然后正确安装并注册了ldv32.dll。
    猜你喜欢
    • 2018-11-28
    • 1970-01-01
    • 1970-01-01
    • 2013-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多