使用C#代码中的C库

本文关键字:代码 使用 | 更新日期: 2023-09-27 18:22:09

我有一个C语言的库。是否可以在C sharp中使用它。

http://zbar.sourceforge.net/是我想使用的库的链接

使用C#代码中的C库

可以使用平台调用从C#调用为Windows编译的C库。

在MSDN中,进行C函数调用的语法如下:

[DllImport("Kernel32.dll", SetLastError=true)]
static extern Boolean Beep(UInt32 frequency, UInt32 duration);

上面调用Kernel32.dll中的函数Beep,传入参数frequency和duration。更复杂的调用可能会传入结构和指向数组的指针、返回值等

您需要确保C库可用的C函数被适当地导出,例如Beep函数可能被声明为:

#define DllExport   __declspec( dllexport )
DllExport bool Beep(unsigned int frequency, unsigned int duration)
{
    // C Body of Beep function
}