在C ++代码中延迟加载C库

时间:2018-05-09 13:27:15

标签: c++ c dll delay-load

我目前正在尝试将ffmpeg库(在C中)加载到我的C ++项目中。该库由头文件,.lib文件和.dll文件组成,所有这些都是我成功加载和使用的。 但是,我们的项目非常希望延迟加载这些dll文件,这就是我失败的地方。

归结为:

  • 当我构建项目而没有引用任何库的dll函数时,它运行正常,我看到(通过我的日志)所有dll都正确加载到我明确获取DLL句柄的地方。
  • 当我构建项目并包含对dll的函数调用时,可执行文件简单无法加载,因为它缺少“xx.dll”。这是在函数调用完成之前。 IE:只需在我的代码中调用一个dll函数,程序就会在启动时尝试加载它。
    • 当我在程序的可执行文件旁边手动添加dll时,它在两种情况下运行正常,但不希望它们在我的可执行文件旁边。

有什么明显的东西我缺失或做错了吗?

谢谢!

0 个答案:

没有答案