眾所周知,ASP內(nèi)置了Response、Request、Server、Session、Application五個對象,其實這五個內(nèi)置對象正是IIS控制臺初始化的五個ActiveX DLL組件,既然IIS可以初始化這五個組件用于ASP中,我們當然也可以直接在我們的ActiveX DLL中引用這些組件來實現(xiàn)我們的編程,也就是說我們可以在VB應(yīng)用程序中通過引用這些組件來實現(xiàn)訪問ASP內(nèi)置對象的功能。
通常大家了解的方法就是在安裝了PWS4或者IIS4以上的WEB服務(wù)器,直接在VB的ActiveX DLL應(yīng)用中引用一個名稱叫做“Microsoft Active Server Pages Object”的對象庫,通過引用這個對象庫,我們就獲得了一個對象(類):ScriptingContext,這個對象也正是我們整個文章探討的核心對象:Response、Request、Server、Session、Application。
但是換個思路來考慮。因為調(diào)用 Active Server Pages Object 開發(fā)的 ActiveX DLL 通常都是直接被ASP所調(diào)用。所以我們可以換個方法在不用直接引用Active Server Pages Object 對象庫的狀態(tài)下來使用ASP對象。
具體代碼如下: 1:新建一個VB工程,我們在這里命名為 UnitiCMSV2:(如下所示)
2:首先該VB工程中建立一個模塊,并在模塊中聲名ASP對象名稱:(如下所示)
3:建立一個類模塊,并在類模塊中初試化對象實例:(如下所示)
4:下面是ASP調(diào)用及初始化 ActiveX DLL 的方法:
以上就是本文主要的介紹內(nèi)容,通過ASP將ASP的內(nèi)置對象以參數(shù)的方式直接引用到VB的ActiveX DLL中。節(jié)約了引用對象和 OnStartPage 的花銷。這樣做我經(jīng)過測試效率是有所提高,但是如果你的ActiveX DLL不是應(yīng)用在ASP中。這個方面不推薦使用。因為這個方法是需要ASP作為對象的寄主身份存在的。
該方法是我在做 ASP 和 ActiveX DLL 的一些體會。希望對大家有所幫助。
出處:藍色理想
責任編輯:moby
◎進入論壇網(wǎng)絡(luò)編程版塊參加討論
|