在动态加载的dll中找不到入口点

本文关键字:找不到 入口 dll 动态 加载 | 更新日期: 2023-09-27 18:03:27

在我的windows应用程序中,我必须动态加载一个dll。我通过DllImport属性实现了这一点。但是当我在Visual Studio dumpbin/exports的开发人员命令提示符中执行命令时,DLL上只列出了5个函数。我看不到我需要的功能,但我可以访问静态链接时的方法。是否有办法动态地访问所需的函数

在动态加载的dll中找不到入口点

只能调用导出的DLL中的函数。如果这是您的DLL,那么您需要重新编译它以导出您需要调用的函数。如果它不是您的DLL,并且该函数没有导出,那么您就不走运了。

您在注释中声明,当静态链接到DLL时可以调用该函数。这意味着函数被导出。它的名字很可能被毁坏或装饰过,所以你认不出它。一旦您可以弄清楚被修改或修饰的名称是什么,您就可以使用运行时链接链接到该函数。

另一种可能性是从不同的DLL导出函数,或者甚至在静态库中定义函数。在没有更多细节的情况下,我们无法提供比这更明确的信息。