前几天大哥对我说,使用asp真麻烦,编译环境实在是差劲,他总是在vb里面写好调试好 代码然后在把代码粘贴到asp程序中,为此,我在这提出一个解决之道。使用VB接替ASP 所有的对象,在VB中编写纯粹的ASP程序。 大家应该都知道,其实asp中的好多组件都是使用VB编写出来的,但是让大家感到很不方便的 是如何使用asp固有的几个组件,例如Response,Request,Application,Session等等,如果我 要是能够在VB里面直接使用这些组件的话,那么就能够直接使用VB编写asp运用程序了。 下面是详细的步骤: 1。在VB中新建一个ActiveX DLL.其中那些命名项目、类的过程我就省略了。 2。现在需要在VB中引用两个dll. 第一个是引用ASP引擎的dll. 从菜单中选择Project\References命令,引用'Microsoft Active Server Pages Object Library'. 如果你没有找到它的话,你可以在以下目录中查找这个asp.dll文件%systemdirectory%/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文件中使用这个组件的方法: <% Set objTest = Server.CreateObject("YourPrjName.ASPTest") objTest.ASPTest Set objTest = Nothing %> 好了,希望我的方法能够解决大哥的苦恼,呵呵。 |