2011-12-23 111 views
3

this thread中,Marc Bernier提到「SWIG也生成了一堆我編譯成.NET DLL的C#文件」。如何將SWIG生成的C#文件編譯爲.NET DLL?

我也爲我的課程生成了C#文件。但我真的無法弄清楚如何將其構建到.Net Dll中。我完全不喜歡.Net和DLL。

似乎我'@'不在這裏工作。 @MarcBernier。或者任何人都知道我怎麼能聯繫Marc?

-------編輯---------

感謝您的回答!我把所有生成的類下命名空間MyProjectName

編譯它,似乎它的工作,我把生成的C#DLL到單聲道和編輯器可以自動完成MyprojectName.ClassName.Method()

但是,編譯器也抱怨:EntryPointNotFoundException:SWIGRegisterExceptionCallbacks_MaxFlowGraph

(在此之前,它抱怨DLL沒有找到,所以我把原來的C++ DLL和它停止)

我使用的下單Win7 32bit,不知道發生了什麼 - 我是一個noob,我需要幫助,幫助。

現在是22:36 pm在澳大利亞這麼MERRY CHRISTMAS夥計!

+0

沒有辦法直接通知聊天或其中一個帖子以外的用戶。 – Flexo 2011-12-23 23:05:22

+0

只是以一種骯髒的方式做到了:P,希望馬克能很快看到這一點。 – ZaneArn 2011-12-24 11:52:31

回答

5

在Visual Studio中創建一個新項目,類型爲類庫。然後右鍵單擊該項目並選擇添加>現有項目 ..然後選擇由SWIG生成的所有生成的*.cs文件。 Shift + Ctrl + B它編譯。

+0

我想補充一點,如果你進入在你的答案中創建的vcproj文件,你實際上可以編輯它以包含單個文件通配符,比如「* .cs」,這樣當新文件被添加到它時它將繼續工作C#綁定。我們在我目前正在開發的一個項目中使用這種方法。花費幾分鐘時間來調整它以滿足您的需求,但它有助於實現自動構建。 – lefticus 2011-12-24 06:31:22

+0

感謝您的回答!我把所有生成的類放在**命名空間MyProjectName下**我編譯它,看起來它工作,我把生成的C#DLL放到Mono中,編輯器可以自動完成** MyprojectName.ClassName.Method()**。 但是,編譯器也抱怨: ** EntryPointNotFoundException:SWIGRegisterExceptionCallbacks_MaxFlowGraph ** (在此之前,它抱怨** DLL沒有發現**,所以我把原來的C++ DLL和它停止) 我使用的是單聲道下Win7 32bit。 下午22:36在澳大利亞這裏聖誕快樂! – ZaneArn 2011-12-24 11:32:43