2012-01-15 56 views
6

我正在爲c#項目使用C++框架並使用swig來連接它們。當使用Swig for C#時TypeInitializationException異常

問題是,當我嘗試創建一個C++對象包裝時,每次都會引發TypeInitializationException

C#代碼

TRPoint p = new TRPoint(); 

其中TRPoint是一個C++結構

typedef struct { 
    float x, y; 
} TRPoint; 

enter image description here

細節:

enter image description here

我有一個vc項目,它將C++代碼構建到DLL文件中,但我不知道如何正確鏈接它。

+3

什麼是內部異常? – 2012-01-15 21:07:09

+0

單擊查看詳細信息。 Swig變得相當複雜的祝福,當你不瞭解異常的時候,你不明白的調試代碼並不是一種快樂。慢一點。 – 2012-01-15 21:22:55

+0

@ M.Babcock我已經更新了這個問題。 – 2012-01-15 21:46:45

回答

3

異常說「無法加載DLL」 - 這聽起來像你SWIG生成的not built the C++ code,或者如果它被構建,可能會遇到路徑問題。

+0

我已經構建了C++代碼到DLL文件,但我們無法使用DllImport加載它。 – 2012-01-16 00:41:12

+0

常見問題解答的鏈接應該更新爲以下鏈接:https://github.com/swig/swig/wiki/FAQ#shared-libraries – matth 2017-01-31 11:52:42

相關問題