2013-01-16 88 views
1

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

+0

阅读此:http://stackoverflow.com/questions/4818850/is-is-possible-to-export-functions-from-ac-sharp-dll-like-in-vs-c –

回答

5

不,这是不可能的。但是here是你可以做,使用C++中的C#库的内容:

  1. C++/CLI包装(这可以让你有管理的和相同的源文件中的非托管代码托管部分可以再调用C#。码)。 Here你可以找到一个例子。
  2. 主机CLR(CLR充当可以通过进程加载和“托管”的库)。
  3. COM Interop(将.NET类型公开为COM接口并匹配可从非托管C++轻松使用的coclass)。

This thread也很有趣!

+0

我在尝试第一种解决方案,我使用Visual Studio Express的一个版本,我可以创建一个空的解决方案吗? – user1544067

+0

“空解决方案”是什么意思? –

+0

这是什么写的[这里](http://code.msdn.microsoft.com/windowsdesktop/Consuming-C-Library-in-937458e5)第1步。创建一个空的解决方案。 – user1544067

0

你可以使用调用LoadLibraryGetProcAddress的动态加载DLL,你不会需要创建您参考文件。您可以read more here

+0

这样你也可以创建一个在dll中定义的类的实例吗? – user1544067