从本机C调用.NET托管代码

从本机C调用.NET托管代码,.net,c,windows,.net,C,Windows,我需要能够从本机C调用DLL中的.NET 3.5托管代码。我没有提供.h或.lib文件。 我已经尝试了一个C++ DLL来公开一个C兼容的接口,但是我似乎不能包含我在项目中需要用到的DLL。 有没有办法从本机C调用.NET托管代码?纯托管代码永远不会为您提供头或库-它依赖于.NET framework的元数据功能,而不是由编译器确定适当的API 从C使用托管程序集的最简单方法是使用C++/CLI围绕托管代码生成本机包装。然后,您可以从这个DLL中公开一个C API,并像其他任何C/C++DLL一

我需要能够从本机C调用DLL中的.NET 3.5托管代码。我没有提供.h或.lib文件。
我已经尝试了一个C++ DLL来公开一个C兼容的接口,但是我似乎不能包含我在项目中需要用到的DLL。
有没有办法从本机C调用.NET托管代码?

纯托管代码永远不会为您提供头或库-它依赖于.NET framework的元数据功能,而不是由编译器确定适当的API

从C使用托管程序集的最简单方法是使用C++/CLI围绕托管代码生成本机包装。然后,您可以从这个DLL中公开一个C API,并像其他任何C/C++DLL一样调用它。

您应该看一看,这可以作为一个示例获得。以下是作者的描述:

一组编译时库(无需部署)和一个生成任务,使您能够将函数从托管代码导出到本机应用程序。这意味着,您可以使用托管语言(如C#或F#)为只有C-Api(如Notepad++)的本机应用程序创建插件。nuget软件包就是你所需要的。只需使用[DllExport]标记您的方法,并针对x86、x64或ia64构建


好的,谢谢你的信息。在VisualStudio2008中,我将创建一个类库项目来实现这一点,对吗?可能的重复