如何在C#项目中使用LIB文件?

时间:2014-02-01 15:17:02

标签: c# c++ visual-studio-2010 static-libraries

lib文件和.h一起使用,它与某些设备驱动程序一起使用。 Visual Studio C ++项目示例使用该库作为静态链接。

该库只导出了2个函数。

HANDLE open_dev();
HANDLE open_file( char *filename );

我想在我的C#项目中使用该库,并再次静态链接它。怎么可能?

1 个答案:

答案 0 :(得分:5)

您可以创建一个DLL,在其中为.lib:

中的每个函数创建包装函数
extern "C" __declspec (dllexport) HANDLE OpenFile(char const * filename)
{
    return open_file(filename);
}

在C#中,您使用P / Invoke使dll功能可用:

[DllImport("WrapperLib.dll")]
private static extern System.IntPtr OpenFile(string filename);