一直以來,想寫一些組件方面的應用,這段時間終於可以寫一點自己喜歡的東西。
希望大家通過這些教程學習後,可以隨心所欲的寫出自己的組件。
每篇文章可能沒有關聯,只是寫一些組件編寫過程中出現的問題。
歡迎大家批評指正
環境:winxp+vb6+sp6+visual interdev6.0
作為第一篇,我們先來寫一個比較簡單的組件
完成的功能是:輸入兩個數相加,返回相加的結果
開啟vb6,建立Activex Dll工程。工程名修改為fCom,類名修改為fC1
點擊菜單->工具->添加過程
我們在名稱內輸入Add,類型選擇函數,範圍選取公有,然後確定即可
產生如下代碼,我們繼續完善
Option Explicit
Public Function Add(ByVal a As Long, ByVal b As Long) As Long
Add = a + b
End Function
Ok,一個簡單的組件就寫好了,點擊菜單->檔案->產生fCom.dll檔案
確定,在目錄下就會有fCom.dll檔案
測試
開啟visual interdev6.0,產生一個asp檔案,為什麼要使用interdev,因為它有代碼提示功能,與vb的ide環境一致,方便書寫
<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>
<%
set obj=server.CreateObject("fCom.fC1")
‘下面這句注意了,因為函數有傳回值的,不能按下面的方法寫,否則ie中會報錯
‘obj.Add(3,4)
‘錯誤類型:
’Microsoft VBScript 編譯器錯誤 (0x800A0414)
’調用子程式時不能使用括弧
’/xml/fc1.asp, line 9, column 12
’obj.Add(3,4)
‘下面是正確寫法
dim c
c=obj.Add(3,4)
Response.Write c
%>
</BODY>
</HTML>
配置好虛擬目錄,在ie中執行此asp檔案,得到結果7
第一篇結束了,祝大家學習愉快