发信人: garfieldmao() 
整理人: fishy(2000-10-06 10:41:26), 站内信件
 | 
 
 
2000-08-24·Batman ·china asp
 
 
   前几天大哥对我说,使用asp真麻烦,编译环境实在是差劲,他总是在vb里面 
 写好调试好代码然后在把代码粘贴到asp程序中,为此,我在这提出一个解决之道 
 。使用VB接替ASP所有的对象,在VB中编写纯粹的ASP程序。
 
   大家应该都知道,其实asp中的好多组件都是使用VB编写出来的,但是让大家 
 感到很不方便的是如何使用asp固有的几个组件,例如Response,Request,Applic 
 ation,Session等等,如果我要是能够在VB里面直接使用这些组件的话,那么就能 
 够直接使用VB编写asp运用程序了。
 
   下面是详细的步骤:
 
   1。在VB中新建一个ActiveX DLL.其中那些命名项目、类的过程我就省略了。 
 
 
   2。现在需要在VB中引用两个dll.
 
   第一个是引用ASP引擎的dll.
 
   从菜单中选择Project\References命令,引用'Microsoft Active Server Pa 
 ges Object Library'. 
 
   如果你没有找到它的话,你可以在以下目录中查找这个asp.dll文件%system 
 directory%/system32/inetsvr目录
 
   单击按钮'Browse...'可以导入这个动态连接库
 
   第二个是引用Microsoft Transaction Server (MTS)对象.选择同样的命令, 
 引用
 
   'Microsoft Transaction Server Type Library'. 
 
   如果你没有找到它的话,你可以在以下目录中查找这个mtxas.dll文件
 
   %systemdirectory%/system32/Mts/ 3。好了,所有准备工作完成,下面是如 
 何编写的代码,我想大家都能够看明白的。
 
   这个是类文件的代码:
 
   Option Explicit
 
   Dim m_objResponse As Response
 
   Dim m_objRequest As Request
 
   Dim m_objServer As Server
 
   Dim m_objApplication As Application
 
   Dim m_objSession As Session
 
   Private Sub Class_Initialize()
 
   Dim objContext As ObjectContext
 
   Set objContext = GetObjectContext()
 
   Set m_objResponse = objContext("Response")
 
   Set m_objRequest = objContext("Request")
 
   Set m_objServer = objContext("Server")
 
   Set m_objApplication = objContext("Application")
 
   Set m_objSession = objContext("Session")
 
   End Sub
 
   Public Sub ASPTest()
 
   m_objResponse.Write "告别写字板,使用VB环境编写ASP程序!"
 
   End Sub 
 
   将以上的代码拷贝粘贴到你的程序中,然后编译这个项目成dll。最后使用
  
 
   regsvr32 componentname.dll把这个dll注册到iis中。
 
   下面是在asp文件中使用这个组件的方法:
 
   $#@60;%
 
   Set objTest = Server.CreateObject("YourPrjName.ASPTest")
 
   objTest.ASPTest
 
   Set objTest = Nothing
 
   %$#@62;
 
 好了,希望我的方法能够解决大哥的苦恼,呵呵。
 
 
 --  ╔════════════╗
  ║ ★ 猫仔 [1;31m OICQ:1251089 ★║
  ║ ☆ VISUALBASIC & CGI ☆║
  ※ 修改:.garfieldmao 于 Sep 10 11:35:05 修改本文.[FROM: 202.105.150.253] ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.105.150.253]
  | 
 
 
 |