无法在DLL中找到入口点

Cip*_*her 4 c# c++ visual-c++

我有一个C#应用程序,我试图将参数发送到C++函数.但是,我收到了错误(在主题中提到)

C#应用程序:

static class SegmentationFunctions
{
[DllImport("MyApplication.dll", EntryPoint = "fnmain", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
        public static extern int fnmain(string search);
    }
}

public partial class MainWindow:Window
{
public MainWindow()
{
InitializeComponent();

string search = "test string here";
int scommand = SegmentationFunctions.fnmain(search);
}
Run Code Online (Sandbox Code Playgroud)

C++ file.h

extern "C" QUERYSEGMENTATION_API int fnmain(char query[MAX_Q_LEN]);
Run Code Online (Sandbox Code Playgroud)

C++文件.cpp

extern "C" QUERYSEGMENTATION_API int fnmain(char searchc[MAX_LEN_Q])
{

do something...

}
Run Code Online (Sandbox Code Playgroud)

Rom*_* R. 5

Dependency Walker可以向您显示从DLL有效导出的函数.您将能够看到它是否fnmain存在,或者它是否存在_fnmain,或者其名称中是否有C++装饰.