我有一个在 c++ 中创建的 dll,它使用 .def 文件导出函数。函数编写如下:
__declspec(dllexport) int __stdcall MethodA(int par1,int par2,char *par3)
{....}
然后该方法在 .def 文件中声明为
MethodA @1
现在我的问题是如何在我的 C# 应用程序中使用这种方法?我尝试在我的 C# 应用程序中添加 dll 文件作为参考,我收到以下消息
"A reference to the filename.dll could not be added please make sure that the file is accessible and that the file is a valid assembly or COM component."
编辑: 阅读此处发布的评论后。我正在尝试以下列方式使用该文件
[DllImport("C:\\Filename.dll")]
public static extern int MethodA(int par1,int par2,String par3);
我正在使用它
MethodA(1,2,"SomeString);
这是我得到的错误
An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)