本篇內(nèi)容主要講解“VB調(diào)用C#類庫的方法步驟”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“VB調(diào)用C#類庫的方法步驟”吧!
創(chuàng)新互聯(lián)建站 - 中國電信成都樞紐中心,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽服務(wù)器托管,德陽服務(wù)器托管,遂寧服務(wù)器托管,綿陽服務(wù)器托管,四川云主機(jī),成都云主機(jī),西南云主機(jī),中國電信成都樞紐中心,西南服務(wù)器托管,四川/成都大帶寬,成都機(jī)柜租用,四川老牌IDC服務(wù)商
使用c#語言在.net平臺生成的dll是基于MSIL的二進(jìn)制代碼,通常情況下是無法被native的語言和程序調(diào)用的(例如vb,vc,delphi)。但是一般來說windows上native的程序都是可以直接使用com對象的。通過.net平臺提供的一些工具,可以為其偽造一個(gè)com接口并注冊到系統(tǒng)中。此時(shí),可以在native的程序里,通過這個(gè)偽com接口來實(shí)現(xiàn)此.net的dll的調(diào)用。
vb調(diào)用C#類庫的方法步驟
1 使用C#建立.net的dll
1.1 建立項(xiàng)目
在.net中新建一個(gè)項(xiàng)目:TestCom。
1.2 實(shí)現(xiàn)c#類
在class1.cs文件中添加一個(gè)接口和一個(gè)類:
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類型。
1.3添加強(qiáng)名
選擇開始菜單中Vistual Studio目錄下的Vistual Studio Tools下的Vistual Studio 命令提示。使用sn -k c:\myKey.snk生成簽名文件。
在項(xiàng)目上右鍵,點(diǎn)擊屬性,選擇簽名,選中為程序集簽名,選擇myKey.snk文件。
1.4生成解決方案
在項(xiàng)目目錄的\TestCom\bin\Debug中可以找到TestCom.dll。至此,c#生成的.net dll已經(jīng)完成。
2 生成和注冊類型庫
2.1生成tlb類型庫
在Visual Studio命令提示符下,切換到此目錄。
輸入tlbexp TestCom.dll /out:TestCom.tlb,提示成功導(dǎo)出tlb類型庫文件。
2.2 注冊類型庫
輸入regasm TestCom.dll /tlb: TestCom.tlb /codebase,將類型庫導(dǎo)入到注冊表。提示成功注冊了類型,說明操作成功,此時(shí)TestCom .dll可以作為一個(gè)com來使用。
2.3 添加dll到GAC
輸入gacutil /i TestCom.dll,將此.net程序集添加到GAC。
3 vb調(diào)用C#類庫測試
3.1 創(chuàng)建vb項(xiàng)目
在vb中新建一個(gè)標(biāo)準(zhǔn)exe項(xiàng)目。
在項(xiàng)目菜單選擇引用,在彈出的引用com對象列表中找到TestCom,選上。
在窗體上拖放一個(gè)按鈕,雙擊按鈕,在按鈕事件里輸入代碼:
Dim a As New TestCom.Class1 MsgBox a.test
3.2 運(yùn)行程序
啟動(dòng)項(xiàng)目,點(diǎn)擊按鈕,彈出對話框ok,說明調(diào)用成功。
4 asp調(diào)用測試
4.1創(chuàng)建asp文件
在iis的根目錄下新建一個(gè)文本文件,改名為1.asp,輸入以下內(nèi)容:
< % SET s = CreateObject("TestCom.Class1") Response.Write(s.test()) %>
4.2 運(yùn)行程序
在ie中訪問此文件,頁面輸出ok,說明VB調(diào)用C#類庫調(diào)用成功。
到此,相信大家對“VB調(diào)用C#類庫的方法步驟”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!