打开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框架结束,下面可以根据自己需要去完善所需封装的函数了。
6、新创建一个测试函数
在demo类模块下贴上以下两段测试函数。
复制代码 代码如下:
public sub hello()
response.write ("hello world!")
exit sub
end sub
7、编译生成dll
文件-->生成asp2dll.dll-->选择工程所在文件夹确定,ok,至此如果没有错误信息提示的话,则证明dll组件已编译成功。
8、注册、卸载组件
在asp2dll.dll组件所在目录创建
“注册.bat”批处理文件,输入:
复制代码 代码如下:
iisreset/stop
regsvr32/s asp2dll.dll
iisreset/start
“卸载.bat”批处理文件,输入:
复制代码 代码如下:
iisreset/stop
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、vb6 sp6精简绿色版下载链接
原文来自:http://www.dlstu.cn/code/default.asp?cateid=20 感谢作者的辛勤劳动,东西太好了,就是网站访问太慢了
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!