溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

VB調(diào)用C#類庫的方法步驟

發(fā)布時間:2021-08-25 17:47:47 來源:億速云 閱讀:479 作者:chen 欄目:編程語言

本篇內(nèi)容主要講解“VB調(diào)用C#類庫的方法步驟”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“VB調(diào)用C#類庫的方法步驟”吧!

使用c#語言在.net平臺生成的dll是基于MSIL的二進制代碼,通常情況下是無法被native的語言和程序調(diào)用的(例如vb,vc,delphi)。但是一般來說windows上native的程序都是可以直接使用com對象的。通過.net平臺提供的一些工具,可以為其偽造一個com接口并注冊到系統(tǒng)中。此時,可以在native的程序里,通過這個偽com接口來實現(xiàn)此.net的dll的調(diào)用。

vb調(diào)用C#類庫的方法步驟

1 使用C#建立.net的dll

1.1 建立項目

在.net中新建一個項目:TestCom。

VB調(diào)用C#類庫的方法步驟

1.2    實現(xiàn)c#類

在class1.cs文件中添加一個接口和一個類:

using System;   using System.Collections.Generic;   using System.Text;   using System.Runtime.InteropServices;    namespace TestCom   {       [ComVisible(true)]       public interface iClass1       {           string test();       }        [ComVisible(true)]       [ClassInterface(ClassInterfaceType.AutoDual)]        public class Class1 : iClass1       {           public string test()           {               return "ok";           }        }   }

注意接口和類上的屬性,對com可見和生成com類型。

VB調(diào)用C#類庫的方法步驟

1.3添加強名

選擇開始菜單中Vistual Studio目錄下的Vistual Studio Tools下的Vistual Studio 命令提示。使用sn -k c:\myKey.snk生成簽名文件。

在項目上右鍵,點擊屬性,選擇簽名,選中為程序集簽名,選擇myKey.snk文件。

VB調(diào)用C#類庫的方法步驟

1.4生成解決方案

在項目目錄的\TestCom\bin\Debug中可以找到TestCom.dll。至此,c#生成的.net dll已經(jīng)完成。

2 生成和注冊類型庫

2.1生成tlb類型庫

在Visual Studio命令提示符下,切換到此目錄。

輸入tlbexp TestCom.dll /out:TestCom.tlb,提示成功導出tlb類型庫文件。

VB調(diào)用C#類庫的方法步驟

2.2 注冊類型庫

輸入regasm TestCom.dll /tlb: TestCom.tlb /codebase,將類型庫導入到注冊表。提示成功注冊了類型,說明操作成功,此時TestCom .dll可以作為一個com來使用。

VB調(diào)用C#類庫的方法步驟

2.3 添加dll到GAC

輸入gacutil /i TestCom.dll,將此.net程序集添加到GAC。

3  vb調(diào)用C#類庫測試

3.1 創(chuàng)建vb項目

在vb中新建一個標準exe項目。

在項目菜單選擇引用,在彈出的引用com對象列表中找到TestCom,選上。

在窗體上拖放一個按鈕,雙擊按鈕,在按鈕事件里輸入代碼:

Dim a As New TestCom.Class1   MsgBox a.test

VB調(diào)用C#類庫的方法步驟

3.2 運行程序

啟動項目,點擊按鈕,彈出對話框ok,說明調(diào)用成功。

VB調(diào)用C#類庫的方法步驟

4  asp調(diào)用測試

4.1創(chuàng)建asp文件

在iis的根目錄下新建一個文本文件,改名為1.asp,輸入以下內(nèi)容:

< %    SET s = CreateObject("TestCom.Class1")    Response.Write(s.test())    %>

4.2 運行程序

在ie中訪問此文件,頁面輸出ok,說明VB調(diào)用C#類庫調(diào)用成功。

VB調(diào)用C#類庫的方法步驟

到此,相信大家對“VB調(diào)用C#類庫的方法步驟”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI