初級教程寫了七篇了,肯定還有一些初級的東西需要寫,我會慢慢的進行補充
中級教程的內容:
這可能也是大家最關心的:如:資料庫的操作與封裝。Asp內建對象的使用。這些部分我會花費較長的篇幅來說明,這一部分內容需要你能夠比較熟練的使用ADO操作資料庫並且對asp的5大對象比較熟悉。
我們看一下網上比較流傳的一些資料:
眾所周知,ASP內建了Response、Request、Server、Session、Application五個對象,其實這五個內建對象正是IIS控制台初始化的五個ActiveX DLL組件,既然IIS可以初始化這五個組件用於ASP中,我們當然也可以直接在我們的ActiveX DLL中引用這些組件來實現我們的編程,也就是說我們可以在VB應用程式中通過引用這些組件來實現訪問ASP內建對象的功能。
只要你安裝了PWS4或者IIS4以上的WEB伺服器,你就擁有了一個名稱叫做“Microsoft Active Server Pages Object”的物件程式庫,我們可以在VB的ActiveX DLL應用中引用這個物件程式庫,通過引用這個物件程式庫,我們就獲得了一個對象(類):ScriptingContext,這個對象也正是我們整個文章探討的核心對象。物件程式庫內的關係如下:
物件程式庫 類 類成員
ASPTypeLibrary ScriptingContext Application
Request
Response
Session
Server
通過上面的關係圖,我們就可以很容易理解類ScriptingContent。
下面我們來看一個具體的例子吧:
開啟vb6,建立Activex Dll工程。工程名修改為fCom,類名修改為fZ1
引用“Microsoft Active Server Pages Object”物件程式庫。
建立兩個組件事件:OnStartPage以及OnEndPage
在事件OnStartPage中建立類ScriptingContent的一個引用。
執行個體化類ScriptingContent。
代碼如下:
Option Explicit
'對象的聲明
Dim myResponse As Response
Dim myRequest As Request
Dim myApplication As Application
Dim myServer As Server
Dim mySession As Session
'當組件被建立的時候會觸發這個事件
Public Sub OnStartPage(myScriptingContent As ScriptingContext)
'進行對象的執行個體化
Set myResponse = myScriptingContent.Response
Set myRequest = myScriptingContent.Request
Set myServer = myScriptingContent.Server
Set myApplication = myScriptingContent.Application
Set mySession = myScriptingContent.Session
myResponse.Write "ActiveX DLL組件已經被建立了!"
End Sub
'當組件被銷毀的時候觸發這個事件
Public Sub OnEndPage()
myResponse.Write "ActiveX DLL組件已經被銷毀!"
'銷毀對象
Set myResponse = Nothing
Set myRequest = Nothing
Set myServer = Nothing
Set myApplication = Nothing
Set mySession = Nothing
End Sub
'定義我們自己的一個組件方法
Public Sub HelloWorld()
myResponse.Write "這是用asp內建對象寫的"
End Sub
測試
開啟visual interdev6.0,產生一個asp檔案
<%@ Language=VBScript %>
<HTML>
<BODY>
<%
set obj=server.CreateObject("fCom.fZ1")
call obj.HelloWorld()
%>
</BODY>
</HTML>
配置好虛擬目錄,在ie中執行此asp檔案,得到結果如下:
ActiveX DLL組件已經被建立了!這是用asp內建對象寫的 ActiveX DLL組件已經被銷毀!