C#引用C++Dll

1.      将要引用的C++dll文件放在C#项目文件bin->debug/release目录下。

2.      项目中添加.cs文件,声明一个类,类中声明引用dll文件中的各个函数,并封装出方便外部调用的函数。

         (个人习惯将某个Dll库函数封到一个类库中,作为专门的功能类使用)

Dll函数声明:

将C++DLL中公布的函数声明出来,下图上半部分是C#中的函数引用声明,下半部分是Dll公布的函数原型。

(注意,声明时参数类型和返回值类型要从C++转为C#对应的类型,类型对应可见http://blog.csdn.net/popten/article/details/50070921)

 C#引用C++Dll_第1张图片

在类中引用dll函数:

类DShow根据需要封装了几个公有函数,函数中根据需要调用声明的Dll库中的函数

C#引用C++Dll_第2张图片

将函数封装成类的方法,其它文件中可以实例化该类,调用其方法,进而引用了dll中的函数

使用方法:

DShow show=new DShow();

show.Init(IntPtr.Zero,200,300);

show.Close();

常见错误:

“试图加载格式不正确的程序”,解决方法:将项目属性中的目标平台设为x86

X64位的CPU/win7平台上开发的C#应用程序在调用一些32位dll库后,报出这种异常信息。

你可能感兴趣的:(.net)