2016-09-08 71 views
0

我在使用C++项目中的dll时遇到了一个问题!我的问题是:找不到avcodec.dll!(我的代码打不开):实际上我想从avcodec.dll调用avcodec_license。我测试了这个另一个dll,但同样的问题给我看。 (跳转到其他部分)在C++中调用时找不到并打开dll

谢谢

+2

如果LoadLibrary调用失败,您应该调用'GetLastError'。 – PaulMcKenzie

+2

有很多原因,它不是开放的。你有没有尝试加载“依赖沃克”DLL? –

回答

0

如果Dependency Walker没有给你一个想法,为什么您的库无法加载,如果GetLastError代码也没有帮助,您可以使用可用于内部跟踪日志LoadLibrary

这是相当先进的功能,它需要你得到实用程序。它是Debugging Tools for Windows的一部分。要启用日志记录,请运行以下命令:

gflags.exe -i YouProject.exe +sls 

之后,在调试器中运行您的应用程序以查看跟踪日志输出。

+0

我已经有'Windows调试工具'并运行以下命令:gflags.exe -i MyProject.exe + sls。 并启用设置中的异常记录。但日志保存在哪里? – Sina

+0

@Sina在调试器中运行应用程序。如果您使用Visual Studio,日志将在“调试器输出”视图中可见。 – Nikita

0

感谢球员...

我刚刚从64更改调试CFG到x86和函数名“avcodec_license”我没有在DLL源看到和更改为“avcodec_version”!无论什么......它的工作!感谢你与我分享你的经验。

不错:)