2013-04-10 57 views
1

我有一個VB編碼的文件,需要在我的C#程序中引用和使用。我無法讓C#程序識別我的.vb文件,以便通過C#窗體窗體方法向其發送變量。我怎樣才能讓這兩個文件一起工作?我是否需要包含與系統方法結合使用的陳述?你有什麼建議?我需要在我的C#程序中使用VB文件中的方法,我該如何調用此方法?

+0

不,你需要將它編譯成一個dll,並引用它。 – 2013-04-10 16:23:46

+0

只需簡單地將VB代碼重寫到c#中就可以了嗎?如果是這樣,那麼只需按照建議的流程重新編譯爲.dll即可。 – 2013-04-10 16:25:08

+0

如果你已經將vb項目編譯爲一個dll,你可以將dll添加爲一個項目引用,然後再與一個使用語句結合起來,使dll中的公共類可以在c#代碼中訪問。從那裏,工作正常。 – Nevyn 2013-04-10 16:25:53

回答

6
  1. 創建VB.NET新項目
  2. 添加您的VB文件到它。
  3. 編譯項目並從bin文件夾中獲取DLL。
  4. 在C#項目中添加對此DLL的引用。
  5. 現在你可以訪問VB文件的功能。

或者,您可以將C#和這個新的VB項目添加到一個解決方案中,並在C#項目中添加對VB項目的引用。從調試的角度來看,這是首選解決方案。

您可能想要嘗試免費使用的轉換工具,它可以將VB.NET代碼轉換爲C#代碼(反之亦然),這將使您擺脫所有上述情況。我經常使用名爲Econ NetVert的優秀轉換工具可用here

我剛剛注意到你已經添加了VB6作爲你問題中的標籤之一。 VB6中的代碼有問題嗎?如果是這樣,您可能首先需要將其升級到VB.NET。我知道在VS2003中有一個嚮導可以爲你做到這一點。不知道在VS2010或VS2012中現在是否有任何其他等效的工具或方法。

+0

+1用於爲兩個項目提供與編譯爲DLL相同的解決方案。這是更好的解決方案,特別是如果VB代碼中的邏輯很複雜 – 2013-04-10 16:33:55

相關問題