一直以來,想寫一些組件方面的應用,這段時間終于可以寫一點自己喜歡的東西。
希望大家通過這些教程學習后,可以隨心所欲的寫出自己的組件。
每篇文章可能沒有關聯,只是寫一些組件編寫過程中出現的問題。
歡迎大家批評指正
環境: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
第一篇結束了,祝大家學習愉快
|