通过VB6将ASP编译封装成DLL组件最简教程 附全部工
网络编程 2021-07-05 10:58www.168986.cn编程入门
因为近期问的网友比较多,就简单整理出来一个,有问题可以通过评论
1、新建DLL
打开VB6-->文件-->新建工程-->选择ActiveX DLL-->确定
2、将默认工程、类重命名
工程重命名工程-->工程1 属性(此名称对应窗体内工程项目名称)-->在打开对话框中将“工程名称”重命名为ASP2DLL(当DLL组件在系统中注册后,在asp中默认的调用方法是“工程名.类名”)-->确定
类重命名在属性窗口中将名称重命名为Demo
3、定义ASP基本对象
添加模块工程-->添加模块-->选择“模块”-->打开
重命名模块工程资源管理器-->模块--Module1-->在属性窗口中将Module1重命名为“ASPMod”
添加模块代码,此段代码几乎适用于所有使用vb封装的asp DLL组件中,其中的ASP2DLL更改为工程名或者在调用时保持一致即可,代码如下
Public objContext As ObjectContext
Public Application As ASPTypeLibrary.Application
Public Server As ASPTypeLibrary.Server
Public Session As ASPTypeLibrary.Session
Public Response As ASPTypeLibrary.Response
Public Request As ASPTypeLibrary.Request
Public Sub ASP2DLL_Initialize()
On Error Resume Next
Set objContext = GetObjectContext
Set Application = objContext.Item("Application")
Set Server = objContext.Item("Server")
Set Session = objContext.Item("Session")
Set Request = objContext.Item("Request")
Set Response = objContext.Item("Response")
End Sub
Public Sub ASP2DLL_Terminate()
On Error Resume Next
Set Application = Nothing
Set Server = Nothing
Set Session = Nothing
Set Request = Nothing
Set Response = Nothing
Set objContext = Nothing
End Sub
Public Function Eval(ByRef strEval)
Dim EvalObject As New ScriptControl
EvalObject.Language = "VBScript"
Eval = EvalObject.Eval(strEval)
Set EvalObject = Nothing
End Function
4、保存新创建的DLL
文件-->保存工程,一路确定下来,将模块、类模块、工程文件全部保存在一个文件夹下
5、类模块中调用ASP对象
工程资源管理器-->类模块-->双击Demo切换到Demo类模块代码编辑器,贴上代码,初始化类调用及类销毁,代码如下
Private Sub Class_Initialize()
ASP2DLL_Initialize
End Sub
Private Sub Class_Terminate()
ASP2DLL_Terminate
End Sub
至此,一个基本的DLL框架结束,狼蚁网站SEO优化可以根据自己需要去完善所需封装的函数了。
6、新创建一个测试函数
在Demo类模块下贴上以下两段测试函数。
Public Sub hello()
Response.Write ("Hello World!")
Exit Sub
End Sub
7、编译生成DLL
文件-->生成ASP2DLL.dll-->选择工程所在文件夹确定,ok,至此如果没有错误信息提示的话,则证明dll组件已编译成功。
8、注册、卸载组件
在ASP2DLL.dll组件所在目录创建
“注册.bat”批处理文件,输入
iisreset/s
regsvr32/s ASP2DLL.dll
iisreset/start
“卸载.bat”批处理文件,输入
iisreset/s
regsvr32 /u /s ASP2DLL.dll
iisreset/start
双击运行注册.bat,成功注册会提示“ASP2DLL.dll 中的 DllRegisterServer 成功。”
9、在ASP程序中调用刚封装好的DLL组件及测试函数
步骤2中我们知道“当DLL组件在系统中注册后,在asp中默认的调用方法是‘工程名.类名'”,,应这样创建对象set Obj = Server.CreateObject("工程名.类名") ,代码如下
<%
Dim ASP2DLL
Set ASP2DLL = Server.CreateObject("ASP2DLL.Demo")
ASP2DLL.hello()
Set ASP2DLL = Nothing
%>
10、包含工程文件等相关所有内容打包下载链接(20110221更新下载链接)
在编译DLL时需要注意的几点
1、避免使用vb保留关键字作为函数或变量名;
2、正则、部分Vbscript函数如Eval需要加载“工程-->引用-->Microsoft Script Control 1.0”及“Microsoft VBScript Regular Expressions 5.5”;
3、封装并不能带来本质上的速度提升,虚拟主机、远程服务器需有组件注册权限;
4、对已经存在的组件名称或者修改了dll文件,必须先停止IIS,再重启IIS注册dll组件;
5、下载链接
原文来自:http://.dlstu./code/default.asp?cateID=20 感谢作者的辛勤劳动,东西太好了,就是网站访问太慢了
打开VB6-->文件-->新建工程-->选择ActiveX DLL-->确定
2、将默认工程、类重命名
工程重命名工程-->工程1 属性(此名称对应窗体内工程项目名称)-->在打开对话框中将“工程名称”重命名为ASP2DLL(当DLL组件在系统中注册后,在asp中默认的调用方法是“工程名.类名”)-->确定
类重命名在属性窗口中将名称重命名为Demo
3、定义ASP基本对象
添加模块工程-->添加模块-->选择“模块”-->打开
重命名模块工程资源管理器-->模块--Module1-->在属性窗口中将Module1重命名为“ASPMod”
添加模块代码,此段代码几乎适用于所有使用vb封装的asp DLL组件中,其中的ASP2DLL更改为工程名或者在调用时保持一致即可,代码如下
代码如下:
Public objContext As ObjectContext
Public Application As ASPTypeLibrary.Application
Public Server As ASPTypeLibrary.Server
Public Session As ASPTypeLibrary.Session
Public Response As ASPTypeLibrary.Response
Public Request As ASPTypeLibrary.Request
Public Sub ASP2DLL_Initialize()
On Error Resume Next
Set objContext = GetObjectContext
Set Application = objContext.Item("Application")
Set Server = objContext.Item("Server")
Set Session = objContext.Item("Session")
Set Request = objContext.Item("Request")
Set Response = objContext.Item("Response")
End Sub
Public Sub ASP2DLL_Terminate()
On Error Resume Next
Set Application = Nothing
Set Server = Nothing
Set Session = Nothing
Set Request = Nothing
Set Response = Nothing
Set objContext = Nothing
End Sub
Public Function Eval(ByRef strEval)
Dim EvalObject As New ScriptControl
EvalObject.Language = "VBScript"
Eval = EvalObject.Eval(strEval)
Set EvalObject = Nothing
End Function
4、保存新创建的DLL
文件-->保存工程,一路确定下来,将模块、类模块、工程文件全部保存在一个文件夹下
5、类模块中调用ASP对象
工程资源管理器-->类模块-->双击Demo切换到Demo类模块代码编辑器,贴上代码,初始化类调用及类销毁,代码如下
代码如下:
Private Sub Class_Initialize()
ASP2DLL_Initialize
End Sub
Private Sub Class_Terminate()
ASP2DLL_Terminate
End Sub
至此,一个基本的DLL框架结束,狼蚁网站SEO优化可以根据自己需要去完善所需封装的函数了。
6、新创建一个测试函数
在Demo类模块下贴上以下两段测试函数。
代码如下:
Public Sub hello()
Response.Write ("Hello World!")
Exit Sub
End Sub
7、编译生成DLL
文件-->生成ASP2DLL.dll-->选择工程所在文件夹确定,ok,至此如果没有错误信息提示的话,则证明dll组件已编译成功。
8、注册、卸载组件
在ASP2DLL.dll组件所在目录创建
“注册.bat”批处理文件,输入
代码如下:
iisreset/s
regsvr32/s ASP2DLL.dll
iisreset/start
“卸载.bat”批处理文件,输入
代码如下:
iisreset/s
regsvr32 /u /s ASP2DLL.dll
iisreset/start
双击运行注册.bat,成功注册会提示“ASP2DLL.dll 中的 DllRegisterServer 成功。”
9、在ASP程序中调用刚封装好的DLL组件及测试函数
步骤2中我们知道“当DLL组件在系统中注册后,在asp中默认的调用方法是‘工程名.类名'”,,应这样创建对象set Obj = Server.CreateObject("工程名.类名") ,代码如下
代码如下:
<%
Dim ASP2DLL
Set ASP2DLL = Server.CreateObject("ASP2DLL.Demo")
ASP2DLL.hello()
Set ASP2DLL = Nothing
%>
10、包含工程文件等相关所有内容打包下载链接(20110221更新下载链接)
在编译DLL时需要注意的几点
1、避免使用vb保留关键字作为函数或变量名;
2、正则、部分Vbscript函数如Eval需要加载“工程-->引用-->Microsoft Script Control 1.0”及“Microsoft VBScript Regular Expressions 5.5”;
3、封装并不能带来本质上的速度提升,虚拟主机、远程服务器需有组件注册权限;
4、对已经存在的组件名称或者修改了dll文件,必须先停止IIS,再重启IIS注册dll组件;
5、下载链接
原文来自:http://.dlstu./code/default.asp?cateID=20 感谢作者的辛勤劳动,东西太好了,就是网站访问太慢了
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程