學(xué)習(xí) 2009-07-14 21:38:57 閱讀138 評(píng)論0 字號(hào):大中小
前段兩個(gè)系統(tǒng)需要銜接,原有的Client端程序是用VB6開發(fā)的,需要調(diào)用Java開發(fā)的Web Service,開發(fā)時(shí)間BT的短,沒有時(shí)間研究VB調(diào)用Web Service,故先用C#編寫DLL文件做過渡調(diào)用,關(guān)于C#調(diào)用Web Service是非常簡(jiǎn)單的,在此也不做詳細(xì)描述了?,F(xiàn)在主要解決VB調(diào)用.net的DLL。
我們先做了測(cè)試:(VS2005)
1、先選擇"文件"--> -->"新建"-->"項(xiàng)目"-->"類庫"
我在這取名TestVB,代碼如下:
using System;
using System.Collections.Generic;
using System.Text;
namespace TestVB
{
public class Test
{
public string testEcho()
{
return "test1";
}
}
}
2、編譯此項(xiàng)目前,先設(shè)置"項(xiàng)目"-->"TestVB屬性"-->"生成"下的"為COM Interop 注冊(cè)"打上勾,原有AssemblyInfo.cs文件中的"[assembly: ComVisible(false)]"修改為"[assembly: ComVisible(true)]"保存,編譯即可
3、把生成的DLL文件拷貝到VB開發(fā)機(jī)器上(該機(jī)器需安裝相應(yīng)的.NET框架),運(yùn)行Regasm /tlb /codebase $DLL_DIR/TestVB.dll 命令注冊(cè)該DLL文件,在VB新建項(xiàng)目中引用TestVB.tlb即可在vb中調(diào)用DLL中的函數(shù)。測(cè)試代碼如下:
Private Sub Command1_Click()
Dim a As New Test
MsgBox a.testEcho
End Sub
4、以上是測(cè)試代碼,僅考慮了是否正確調(diào)用函數(shù),假使想讓VB調(diào)用.net DLL時(shí)顯示提示該類中的方法等,需要在DLL編寫時(shí)添加額外的代碼。
聯(lián)系客服