新建---類庫---把你的函數放在新建的類庫中-----生成ClassLibrary1

創新互聯公司服務項目包括三穗網站建設、三穗網站制作、三穗網頁制作以及三穗網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,三穗網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到三穗省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!
在net程序中---引用----對應目錄下的ClassLibrary1.dll
對應的代碼定義如: Dim mydll As New ClassLibrary1.Class1
最后就可以用mydll調用你的函數MyFunction了: mydll .MyFunction(1, 2)
注意:vb.net編寫的DLL不能用API函數的方式通過Declare宣告,只能引用的方式使用
vb.net要編寫的DLL能被vb6.0引用,需要先在編譯屬性中選擇“為COM互操作注冊”打勾
然后在Visual Studio 2008 命令提示中運用RegAsm命令加/tlb命令生成tlb文件
例如:c:\ReleaseRegAsm ClassLibrary1.dll /tlb回車就會在當前目錄生成ClassLibrary1.tlb文件
vb6.0中引用ClassLibrary1.tlb即可。
一、帶窗體的dll創建
1、先新建 類庫(testdll),在項目中添加兩個窗體form1(主窗體)、form2,為了與后面的調用區分分別命名為fm1,fm2;并在fm1窗體中添加一個按鈕用來調用fm2如下圖
2、在fm1窗體代碼中先引用fm2, ? ?按鈕代碼調用fm2.如圖
3、生成dll,(class1.vb中不需要寫任何代碼)
二、調用dll
1、新建 一個windows應用程序并添加一個按鈕用來調用dll中的窗體,選 擇 “項目”-“添加引用”,選擇剛才創建的testdll
2、窗體代碼中先引用testdll,再定義一個testdll中的fm1對象,最后執行對象的show方法
3、運行結果如下:
在解決方案中添加一個類庫項目,切換到主程序項目,添加引用,在對話框中選擇項目頁面,里面就有該類庫項目。點擊,確定就引用進來了。
使用時就是定義該庫中的類了
如這樣:
Dim c As New ClassLibrary1.Class1
msgbox c.cc()
第二圖中像是聲明一個API函數了,既然是類庫當然是類了。
至于生存的Dll文件的注冊可能要手工進行的吧,用RegSvr32.exe。注冊后在引用對話框的Com頁面也應該會出現吧,我用vb6編的一些垃圾東西這里也能找到。
如果DLL不是你寫的,且你要調用的函數不是__stdcall聲明,VB直接調用是會報錯的
如果DLL是你寫的,注意調用約定問題,并看以下代碼
***************************************************
以下是DLL代碼
.cpp里這么寫
1extern "C"__declspec(dllexport) void __stdcall HelloWorld()
2{3 MessageBox(NULL,"HelloWorld","HelloWorld",NULL);4}
.def里這么寫
LIBRARY "XXXX"
EXPORTS
; 此處以下添加
HelloWorld@1
*************************************************
vb里這么寫
1 Public Declare Sub HelloWorld Lib "XXXX.dll" ()
然后調用就可以了,上面是VB的代碼,或許VB.net的也差不多
網頁名稱:vb.net編寫dll,VBNET教程
本文網址:http://www.yijiale78.com/article8/dschdip.html
成都網站建設公司_創新互聯,為您提供微信小程序、網站建設、外貿網站建設、面包屑導航、網站設計公司、網站收錄
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯