2013-01-16 106 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