我试图从C#调用C函数,但我得到一个BadImageFormatException。
这是C函数头:
extern "C"
{
__declspec(dllexport) bool validate(char key[]);
}
以下是我如何从C#
调用它[DllImport("MyDll.dll")]
static extern bool validate(char[] key);
这里错了。
答案 0 :(得分:0)
使用Dependency Walker检查是否从DLL正确导出'validate'功能。 您可能尚未更新DLL项目的.def文件。
答案 1 :(得分:0)
调用本机方法时,应该明确地将c#代码编译为64位或32位。
project/properties/build/Platform target