VB.net程序與C#程序混合編程

適用背景:項目的主程序為VB.net語言編寫,項目需要實現某個功能,有現成的C#語言的代碼。

                  此時實現項目具有此功能有兩種方案:

                   一、 將C#語言改編為VB.net語言;

                   二、將C#代碼集成到VB.net項目的主程序下,實現VB.net程序與C#程序混編。

使用軟件: Microsoft visual studio 2010 。

初始思路: 因為熟悉vb.net語言,并未使用過C#程序編寫過程序,但是接觸過C語言與C++語言,

                 (題外話,熟悉C程序與C++程序對于理解其他程序會容易很多,只了解最基本的C++程序,繼                   承、模板等并不會使用)


將C#程序封裝在類庫中,生成.dll文。C#程序的功能通過函數實現,引用類即可調用類的函數。

第一部分,在C#中生成類庫。

  1. 一、在vs中選擇新建C#項目,選擇類庫;

  2. 二、在類中寫入實現功能的函數;(既要將C#中的功能函數從main函數中分離,這一步對于只會vb.net的人是    一個考驗)。

  3.   例如我在類中創建了一個函數名為Mutiply(),實現兩個數字相乘的功能。

  4.    public static float Mutiply(float numA, float numB)
       {
         float numC;
         numC = numA * numB ;
         return numC;
       }
  5. 三、保存項目,在vs的主菜單下【生成】下點擊生成ClassLibrary1。

  6. 在項目文件加下會生成ClassLibrary1.dll 與Classlibrary.pdb,將在VB.net主程序中引用ClassLibrary1.dll。

第二部分,主項目程序VB.net中引用上述C#的.dll程序。

  1.  一、在vs主菜單添加引用,瀏覽找到ClassLibrary1.dll 

   在相應的程序塊直接應用C#庫中的函數即可。

   在下項目上要添加Import ClassLibrary

   vb.net代碼

   dim a as double = 2.2
   dim b as double = 3.0
   dim c as double
   c= ClassLibrary.class1.Mutiply(a,b)

   


后記:

   一、這個方法實現實在6月中旬實現的,現在想起來操作了一會才想起來,所以學習新東西要及時記錄。

   二、上述實現也可以在VS的vb.net主程序中添加已有項目(vs主菜單【文件】下的【添加】【已有項目】選擇           ClassLibrary1。)這樣解決方案中有兩個項目,可以直接引用C#項目。




登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

3