在ASP中使用vb开发的dll文件封装重要数据
作者:admin 日期:2008-12-26
开发原因---- 由于现在数据资料的不安全性,各个公司已经纷纷使用了数据封装加密手段,常用的是用vb做成2进制的dll组件,这样即使反编译了,也只能得到类名,方法名,具体内容还是加密的,加强了数据安全性!
实现=======>
1:打开vb,新建 ActiveX DLL工程
2:点击 工程-引用-构选-->
Microsoft Active Server Pages Object Library
如果要使用数据库。就要用ADO对象支持的下面的引用
Microsoft ActiveX Data Objects 2.6 Library
为了方便使用asp中的6大对象,我们要在dll文件里首先写入下面的一段话
'注示:下面语句是必须的,将原本的对象作了简化处理,并在两个基本函数中作了处理
Dim rp As Response
Dim rq As Request
Dim ap As Application
Dim sr As Server
Dim sn As Session
Dim a As Integer
Public Sub OnStartPage(MyScriptingContext As ScriptingContext)
Set rp = MyScriptingContext.Response
Set rq = MyScriptingContext.Request
Set sr = MyScriptingContext.Server
Set ap = MyScriptingContext.Application
Set sn = MyScriptingContext.Session
End Sub
Public Sub OnEndPage()
Set rp = Nothing
Set rq = Nothing
Set sr = Nothing
Set ap = Nothing
Set sn = Nothing
End Sub
'注示:下面这个函数是处理前半部分字符串的,直接返回这个字符串的内容
Public Function ConnectDB() As Variant
ConnectDB = "driver={Microsoft Access Driver (*.mdb)};uid=;pwd=123;DBQ="
End Function
'注示:另外定义下面这个函数来处理后半部分内容
Public Function DBPath() As Variant
DBPath = sr.MapPath("DB.asp")
End Function
'注示:下面的方法用作其他功能调用
Public Function Abc() As Variant '方法返回类型是Variant(随意)
Abc = "123" '将字符串赋值给方法返回值,返回值为方法名
End Function
4:点击 运行-全编译执行,如果没有问题则,点击 文件-生成dll文件
5:得到dll文件后,将其拷贝到C:\WINDOWS\system32下在注册
C:\WINDOWS\system32>regsvr32 xn.dll
提示成功
6:编写ASP文件
例子<1>做数据库的调用
<%
dim ProConn
set ProConn=Server.CreateObject("ADODB.CONNECTION")
Dim ConDB
'注示:set ConDB= server.createobject("工程名称.类名称")
set ConDB=Server.CreateObject("ConDBDLL.Conn")
'注示:ConDB就是创建的DLL对象
Dim StrConn
'注示:定义一个字符串接收对象.方法()的放回值
StrConn = ConDB.ConnectDB() & ConDB.DBPath()
'注示:连接两部分内容组成字符串
ProConn.Open StrConn
'注示:执行数据库对象操作
%>
例子<2>其他功能的使用,主要用来封装参数
<%
set zujian = server.createobject("xn123.cs")
Dim aaa
aaa=zujian.Abc
Response.Write(aaa)
set zujian=Nothing
%>
'注示:结果封装的数据给了变量aaa,输出了123
DLL文件注册/卸载方法===================
注册:regsvr32 XXX.dll
卸载:regsvr32 /u XXX.dll
=============================
特别注意:dll文件发生改动后必须重启IIS才可以生效
实现=======>
1:打开vb,新建 ActiveX DLL工程
2:点击 工程-引用-构选-->
Microsoft Active Server Pages Object Library
如果要使用数据库。就要用ADO对象支持的下面的引用
Microsoft ActiveX Data Objects 2.6 Library
为了方便使用asp中的6大对象,我们要在dll文件里首先写入下面的一段话
'注示:下面语句是必须的,将原本的对象作了简化处理,并在两个基本函数中作了处理
Dim rp As Response
Dim rq As Request
Dim ap As Application
Dim sr As Server
Dim sn As Session
Dim a As Integer
Public Sub OnStartPage(MyScriptingContext As ScriptingContext)
Set rp = MyScriptingContext.Response
Set rq = MyScriptingContext.Request
Set sr = MyScriptingContext.Server
Set ap = MyScriptingContext.Application
Set sn = MyScriptingContext.Session
End Sub
Public Sub OnEndPage()
Set rp = Nothing
Set rq = Nothing
Set sr = Nothing
Set ap = Nothing
Set sn = Nothing
End Sub
'注示:下面这个函数是处理前半部分字符串的,直接返回这个字符串的内容
Public Function ConnectDB() As Variant
ConnectDB = "driver={Microsoft Access Driver (*.mdb)};uid=;pwd=123;DBQ="
End Function
'注示:另外定义下面这个函数来处理后半部分内容
Public Function DBPath() As Variant
DBPath = sr.MapPath("DB.asp")
End Function
'注示:下面的方法用作其他功能调用
Public Function Abc() As Variant '方法返回类型是Variant(随意)
Abc = "123" '将字符串赋值给方法返回值,返回值为方法名
End Function
4:点击 运行-全编译执行,如果没有问题则,点击 文件-生成dll文件
5:得到dll文件后,将其拷贝到C:\WINDOWS\system32下在注册
C:\WINDOWS\system32>regsvr32 xn.dll
提示成功
6:编写ASP文件
例子<1>做数据库的调用
<%
dim ProConn
set ProConn=Server.CreateObject("ADODB.CONNECTION")
Dim ConDB
'注示:set ConDB= server.createobject("工程名称.类名称")
set ConDB=Server.CreateObject("ConDBDLL.Conn")
'注示:ConDB就是创建的DLL对象
Dim StrConn
'注示:定义一个字符串接收对象.方法()的放回值
StrConn = ConDB.ConnectDB() & ConDB.DBPath()
'注示:连接两部分内容组成字符串
ProConn.Open StrConn
'注示:执行数据库对象操作
%>
例子<2>其他功能的使用,主要用来封装参数
<%
set zujian = server.createobject("xn123.cs")
Dim aaa
aaa=zujian.Abc
Response.Write(aaa)
set zujian=Nothing
%>
'注示:结果封装的数据给了变量aaa,输出了123
DLL文件注册/卸载方法===================
注册:regsvr32 XXX.dll
卸载:regsvr32 /u XXX.dll
=============================
特别注意:dll文件发生改动后必须重启IIS才可以生效
[本日志由 admin 于 2022-12-31 00:14 AM 编辑]
文章来自: 本站原创
引用通告地址: http://www.cn-sohu.com/bolg/trackback.asp?tbID=177
Tags:



评论: 0 | 引用: 118 | 查看次数: 593
发表评论
你没有权限发表留言!