一、在.net平台上,调用dll文件有2种含义
调用托管dll,即你使用.net平台开发的dll,属于托管代码。调用非托管dll,即传统的dll,一般是C++,VB,DELPHI等等开发出来的,属于非托管代码。
如果是调用托管的dll,方法是 “在解决方案管理器” - “解决方案”(或项目) 中的任意地方, 右键“添加引用”,“浏览”,选择你需要调用的dll文件,确定即可,该dll会自动复制到bin目录,打包时也会自动复制到你发布的地方。
添加完了引用,现在如何调用呢?
1、如果有命名空间则引入命名空间,比如你的xx.dll里面,a是命名空间,有一个b类,然后有一个无参数静态方法c,那么调用方法就是a.b.c(),跟你普通的使用类是一样的。
2、然后是非托管dll,需要添加dll的名称,以及方法,也就是你所用到的dll的每个方法都需要添加一次:
[DllImport("msvcrt.dll")]
public static extern int puts(string c);
二、C#写界面比较方便,而C++则擅长写算法,所以将两者结合起来将会加快程序的开发速度,并保证程序的质量。但C#与C++的混合编程有很多细节问题需要注意,下面简要列举一些并指出相应的解决办法。
1. 将本机C+