【问题标题】:Google test can't find a tested dll谷歌测试找不到经过测试的dll
【发布时间】:2021-08-16 16:18:37
【问题描述】:

我已将 google 测试项目添加到我的解决方案中,如 MS manual 中所述。我在创建测试项目阶段时添加了对我想要测试的项目的引用。我的项目是一个dll。在测试项目引用中,我可以看到原始 dll 的正确路径。测试项目 exe 内置到与我要测试的项目的 dll 不同的文件夹中。 当我运行我的测试项目时,它说我的 dll 无法找到。 显然,如果我将测试 exe 构建到同一个文件夹中,一切都会正常工作,但是还有其他方法可以让我的测试应用程序正确加载 dll 吗?

【问题讨论】:

    标签: c++ visual-studio testing dll googletest


    【解决方案1】:

    我会将被测代码静态链接到测试应用程序。这意味着您在测试期间不使用 DLL,因此不需要它。

    如果您确实想使用 DLL,您可以:

    • 使用SetDllDirectory() 将目录添加到DLL 搜索路径。详情请见Search Order for Desktop Applications
    • 使用LoadLibrary() 动态加载DLL 并指定DLL 的确切路径。您需要使用GetProcAddress() 访问和调用DLL 中的函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-30
      • 2015-03-13
      • 2011-06-14
      • 1970-01-01
      • 2018-10-28
      • 2019-04-08
      • 1970-01-01
      • 2012-08-17
      相关资源
      最近更新 更多