怎么将C语言程序变成dll 让C#界面调用
如何将C语言程序变成dll 让C#界面调用
我这 有一个程序,求代码
------解决思路----------------------
你在C语言中选择新建库函数,然后生成dll..
在C#中用DLLImport 进行引入,然后把你要用的dll中的函数的参数变成C#中的对应参数类型。
形式如下:
[DllImport("RFIDRD303.dll")]
public static extern int RD_OpenCom(string pPort, int nBaudRate, int nCFlow);
[DllImport("RFIDRD303.dll")]
public static extern int RD_CloseCom(int hComm);
[DllImport("RFIDRD303.dll",
CallingConvention = CallingConvention.StdCall,
CharSet = CharSet.Ansi)]
public static extern int RD_DetectTagHfIR(int hComm, StringBuilder pUidInfo, ref int nUidCount);
[DllImport("RFIDRD303.dll")]
public static extern int RD_SetRealTimeBeep(int hComm, int nIndex, int nVoice, int nLed, int nColor);
------解决思路----------------------
DllImport……后,要声明你要调用的函数,将原来C++的形式参数要转为与C#等效的形参,再构建非托管对象或变量调用
我这 有一个程序,求代码
------解决思路----------------------
你在C语言中选择新建库函数,然后生成dll..
在C#中用DLLImport 进行引入,然后把你要用的dll中的函数的参数变成C#中的对应参数类型。
形式如下:
[DllImport("RFIDRD303.dll")]
public static extern int RD_OpenCom(string pPort, int nBaudRate, int nCFlow);
[DllImport("RFIDRD303.dll")]
public static extern int RD_CloseCom(int hComm);
[DllImport("RFIDRD303.dll",
CallingConvention = CallingConvention.StdCall,
CharSet = CharSet.Ansi)]
public static extern int RD_DetectTagHfIR(int hComm, StringBuilder pUidInfo, ref int nUidCount);
[DllImport("RFIDRD303.dll")]
public static extern int RD_SetRealTimeBeep(int hComm, int nIndex, int nVoice, int nLed, int nColor);
------解决思路----------------------
DllImport……后,要声明你要调用的函数,将原来C++的形式参数要转为与C#等效的形参,再构建非托管对象或变量调用