當前位置:首頁 » 編程軟體 » vb編譯dll

vb編譯dll

發布時間: 2022-05-02 03:20:59

『壹』 怎樣用VB編寫標准dll

1、首先創建一個DLL工程,如圖:

『貳』 vb做dll的具體步驟

new Project ---> ActiveX Dll --> 命名為DllTest

加入Class,命名為ClassTest
加入方法,
public sub MethodTest
Msgbox "MethodTest"
end sub

編譯通過後,Make成Dll。

2. Regsvr32 路徑\DllTest.dll

3. 新建立Project
Dim objTest As Object

Set objTest = CreateObject("DllTest.ClassTest")
objTest.MethodTest

『叄』 VB中dll文件是怎麼生成的標準的exe程序已經設計好了,怎麼生成dll文件希望高手能給出詳細說明。

選擇創建ActiveX dll項目來創建DLL文件。
不過,標準的EXE的代碼是基本上沒有用的。
DLL是通過類來實現的,所有可能你現有的代碼要轉換成類。

這些准備好後,編譯成DLL,然後注冊載入DLL,就可提供介面給其他程序用了。

不過,建議做DLL最好不要用VB,因VB需要中間翻譯庫才可運行。
所有你的DLL發行給其他人用時,這個中間翻譯庫文件也要同時發布的。
最好用C++等。當然如果不會這些語句,那也確是沒有辦法的事了。

『肆』 vb如何編譯dll

把C#或VB代碼通編譯成msil後,相應版本的framework執行...如果你用.net寫一個VB文件,在VB語言環境下建立一個類庫,然後在BIN\Debug下就可以找到DLL..NET默認工程是類庫編譯後才是DLL文件.

『伍』 vb 如何編寫dll

比如
要編寫一個動態連接庫MathLib.dll ,其中包括一個函數:
Function Add2(ByVal a As Integer, ByVal b as Integer) As Integer
Add2=a+b
End Function
要如何編寫這個動態連接庫呢?

方法
啟動VB,在新建工程窗中選擇ActiveX DLL,系統即會產生一帶類模塊的工程。
定義工程為DllTest(也可自定),定義類模塊名為MathLib,並在其中輸入函數Add2,這樣名為DllTest的組件就做好了,該組件編譯後即為DLL文件。關閉VB程序。

調用
啟動另一VB並新建標准EXE,點選菜單工程|引用,在引用窗中選中DllTest組件,並在Form_Click中填寫以下代碼:
Dim oMathLib As New MathLib
Dim r As Integer

r = oMathLib.Add2(3, 2)
MsgBox "3+2=" & r
運行之,窗體彈出後點擊後會出現結果窗3+2=5 , 另外,編譯後的組件為DLL文件,使用前需經RegSvr32 -r DllTest.dll注冊後才可使用。

『陸』 VB 怎麼編寫DLL

編寫API類型的DLL請看我後面的哪個文章,不明白的可以網路HI我,我實驗成功了

1-4問題,原因是ActiveX DLL 本質是一個控制項,所以你使用它就必須像使用控制項一樣引用,才可以

5、可以,但是這樣DLL很難封裝API一類的函數,有點類似於自定義控制項的效果。

6、可以,見下面的文章

怎樣用VB編寫.DLL動態鏈接庫文件

VB中創建的DLL只是COM組件,無法作為輸出函數的DLL,其實這只是個錯誤的說法。其實MS非常狡猾,如果你是個VB瘋狂發燒友的話,應該早就狂試出這種可以創建輸出函數的DLL的方法。
VB編譯文件實際上採取了兩次編譯的方法,首先是調用C2.exe產生*.OBJ文件,然後調用Link.EXE連接。如果在LINK的時候添加EXPORT選項,實際上是可以輸出函數的。但是,在VB的工程選項中將這些屏蔽了。而且過分的是:VB在Build完成後會將OBJ文件刪除,這樣就無法手動通過Link來創建我們需要的DLL了。不過我找到一個比較齷鹺的變通的方法,就是先創建一個Exe工程,在Form_Load事件裡面寫下面的語句:

Sub Main
If MsgBox("哈哈", vbOKCancel) = vbOK Then
Shell "link2.exe " & Command$
End If
End Sub

然後編譯為LinkTemp.EXE,接下來將LINK.EXE改名為Link2.exe,將LinkTemp.EXE改名為Link.EXE。這樣在VB調用Link.EXE時會彈出對話框,處理就會中斷。這時就可以有機會將OBJ文件拷貝出來了。
然後我創建了一個ActiveX DLL工程,在這個工程裡面添加一個Mole並創建一個Public函數mathadd:

Public Function mathadd(ByVal a As Long, ByVal b As Long) As Long
mathadd = a + b
End Function

編譯這個工程,在Link的時候就會中斷。然後把創建的Class1.obj、Mole1.obj、Project1.obj備份出來。
然後就可以調用Link2.exe連接OBJ到DLL了,我的連接代碼是:

Link2.exe "e:\vbdll\Class1.obj" "e:\vbdll\Mole1.obj" "e:\vbdll\Project1.obj" "E:\Program Files\Microsoft Visual Studio\VB98\VBAEXE6.LIB" /ENTRY:__vbaS /EXPORT:mathadd /OUT:"e:\vbdll\ProjectOK.dll" /BASE:0x11000000 /SUBSYSTEM:WINDOWS,4.0 /VERSION:1.0 /Dll /INCREMENTAL:NO /OPT:REF /MERGE:.rdata=.text /IGNORE:4078

注意裡面的/ENTRY和/EXPORT開關,/EXPORT開關聲明了輸出函數mathadd。這樣就大功告成了,可以被其他語言引入,例如在VB中,只需要:

Private Declare Function mathadd Lib "e:\vbdll\ProjectOK.dll" (ByVal a As Long, ByVal b As Long) As Long

『柒』 怎樣用VB編寫DLL文件

你先打開VB,然後先中「ActiveX Dll」工程,然後開始編輯。編完後,保存一般是以「.cls」和「.vbw」保存。這時你選擇「文件」菜單,彈出下拉框,選中「生成.dll」選項,它就會在上面彈出一個進度條「正在生成.dll文件」。生成以後是一個有好象齒輪狀的圖標。
如果你要引用,就開一個「標准EXE」工程,然後在「工程」選項中,單擊「引用」,找到你剛才的「.dll」的文件名,在前面的復選框中打勾,就可以引用你剛才在那裡面寫的方法等。

『捌』 怎樣用VB編寫.DLL動態鏈接庫文件

新建DLL文件:打開vb6.0,然後在新建工程窗口中選擇「ActiveX DLL」(如左圖),或點擊vb窗體左上角的「文件」,再點擊「新建工程」,選擇「ActiveX DLL」

保存文件到本地,防止編寫過程中出錯,代碼丟失:點擊」文件「,再點擊」保存工程「,選擇存儲路徑後點「確定」;同樣在代碼編寫中要時刻注意保存代碼

修改工程名稱和類模塊名稱:工程名稱是你編寫完成後,引用者在vb窗體中引用對象的名稱,類模塊名稱是代碼中引用的對象的名稱

編寫DLL文件的代碼:以下僅為示例

編譯成DLL格式文件,DLL文件就製作成功啦:點擊「文件」,再點擊「生成****.dll」,選擇存儲路徑,點「確定」

DLL文件如何引用:使用者只需要在vb點擊「工程」,再點擊「引用」,就可以引用這個dll啦!

『玖』 vb編譯文件,怎麼樣導出相應的dll

發布程序,鏈接的一些庫文件一起打包發布, 否則程序會提示找不到dll文件。vb應用程序一般要鏈接 vb6.dll ,如果系統中沒有安裝vb, 則需要到應用程序所在目錄,或者Windows的系統目錄。
如果缺失其他dll文件,要同樣處理。 通過工具 DEPENDS.EXE 可以查看程序所依賴的所有dll.

『拾』 VB編譯成DLL 需要怎麼做

vb 新建工程時,選擇activex dll,增加模塊,寫上自己的代碼,完成後 菜單 文件--生成 xxx.dll 即可.

熱點內容
安卓機微信怎麼設置紅包提醒 發布:2025-05-14 19:00:15 瀏覽:270
androidsystem許可權設置 發布:2025-05-14 18:56:02 瀏覽:970
mq腳本 發布:2025-05-14 18:45:37 瀏覽:25
仙境傳說ro解壓失敗 發布:2025-05-14 18:45:01 瀏覽:867
betweenand的用法sql 發布:2025-05-14 18:39:25 瀏覽:249
tplink攝像頭存儲卡格式化 發布:2025-05-14 18:37:08 瀏覽:346
安卓平板怎麼安裝excel的軟體 發布:2025-05-14 18:35:44 瀏覽:41
廣州數控圓弧編程實例 發布:2025-05-14 18:25:00 瀏覽:400
搭建伺服器能使用nodejs開發嗎 發布:2025-05-14 18:24:14 瀏覽:135
alook瀏覽器安卓哪個版本上網最快 發布:2025-05-14 18:22:33 瀏覽:457