在 Visual C# 中创建头文件 (.h) 和 .lib 文件

Posted

技术标签:

【中文标题】在 Visual C# 中创建头文件 (.h) 和 .lib 文件【英文标题】:create header file (.h) and .lib file in visual c# 【发布时间】:2013-01-16 13:32:42 【问题描述】:

我想在visual c#中创建一个dll,并在win32程序(visual c++)中使用它。 据我了解,要在 Visual C++ 中添加 dll 文件,我还需要 .h 文件和 .lib 文件,但是当我在 Visual c# 中创建类库时,我只会得到 dll 文件。 是否可以在 Visual c# 中创建 .h 文件和 .lib 文件?

【问题讨论】:

阅读:***.com/questions/4818850/… 【参考方案1】:

不,这是不可能的。但是here 是您可以在 C++ 中使用 C# 库的方法:

    C++/CLI Wrapper(这允许您在同一个源文件中同时拥有托管和非托管代码。托管部分然后可以调用 C# 代码)。 Here你可以找到一个例子。 托管 CLR(CLR 充当库,可由进程加载和“托管”)。 COM 互操作(将您的 .NET 类型公开为 COM 接口和匹配的 coclass,您可以在非托管 C++ 中轻松使用它)。

This thread也挺有意思的!

【讨论】:

我正在尝试第一个解决方案,我使用的是 Visual Studio Express 版本,我可以创建一个空解决方案吗? “空解决方案”是什么意思? 这是写的here 步骤1。创建一个空的解决方案。 那么只需为一个简单的 C# 库创建一个简单的库项目。这就是他的意思。 如果我将在 Visual c# 中进行,我将如何在 Visual c# 中创建 C++ 项目?【参考方案2】:

您可以使用 LoadLibraryGetProcAddress 动态加载 DLL,而无需创建您引用的文件。你可以read more here。

【讨论】:

这样你还可以创建dll中定义的类的实例吗?

以上是关于在 Visual C# 中创建头文件 (.h) 和 .lib 文件的主要内容,如果未能解决你的问题,请参考以下文章

“多重定义”,“此处首先定义”错误

在 Visual Studio 项目中创建包含文件夹和 Lib 文件夹

如何在visual studio2008中创建,编译和运行C++程序,

使用 Visual Studio 2013 在 C# 中创建 asmx Web 服务

在 ActiveX dll 项目中创建列表(对象),在 Visual Basic 6.0 中用于 c# 项目

如何在 Visual Studio 2015 Community 中创建本地数据库?