我有一个在没有我的功能的情况下工作得很好的dll!我写了一个函数并将其添加到dll头文件中。起初,我的函数有一个参数,而dll正在变形。然后我决定在我的函数中添加另一个参数,然后每次调用我的函数时都会出现此错误:
The procedure entry point could not be located in the dynamic link library.
关键是带有一个参数的附加功能有效,但当它有两个参数时,调用失败。使用Dependency Walker,我看到我的函数正确导出(_funcName @ 8)。但是当我使用Dependency Walker打开主应用程序EXE文件并在上述dll中探索导出的函数时,似乎我的函数没有正确导出(_funcName @ 4)。
函数原型如下:
__declspec(dllexport) int WINAPI funcName(const char *, char *);
正如你所看到的,我的函数有两个指针作为参数,“@”后面的数字必须是8而不是4!
我测试了有没有 extern“C” 的功能,但没有改变。我不知道是什么问题?