用VB生成dll代码,封装ASP连接到数据库。

本文将数据库与由VB生成的DLL封装的ASP代码连接起来(作为access数据库的一个示例)。

一般来说,当我们使用ASP连接到Access数据库时,我们通常会做以下操作

/ / proconn.asp
<
昏暗的钰航
集钰航= server.createobject(数据连接)
钰航。打开司机= {微软Access Driver(* .mdb)};UID =;密码= 123;DBQ =server.mappath(分贝。ASP )
这改变了db.asp后缀为Access数据库,最初是DB.mdb文件,数据库密码123

如果错误,数字<0,然后
响应。写数据库没有链接,请检查。
反应结束
其他的
响应。写入数据库链接成功
反应结束
最后如果
%>

如果服务器配置,访问proconn.asp,如果连接数据库成功,数据库链接成功。

但是这种ASP代码的安全级别很低。如果在原始一代中看到这个ASP,那么另一个数据库文件对其他人来说是很容易的。
打开数据库并操作它。

那么,我们的任务是如何封装这些关键内容呢

首先,我们需要确定道路和目标。

Internet上的一些信息主要是用VB生成dll的方式封装的。所以我们也采取这种方式,虽然我还没有真正使用VB。

这个方法是确定的,那么我们需要封装哪些对象呢

来看看
司机= {微软Access Driver(* .mdb)};UID =;密码= 123;DBQ =server.mappath(分贝。ASP )
这是最关键的代码。此代码封装在VB生成的DLL中,应该更好。
不是整个原因
昏暗的钰航
集钰航= server.createobject(数据连接)
钰航。打开司机= {微软Access Driver(* .mdb)};UID =;密码= 123;DBQ =server.mappath(分贝。ASP )
封装,因为整个连接代码封装在互联网上,是因为Proconn.asp其他ASP文件参考,
我还需要钰航里面做其他操作,如果封装,它不便于参考和操作。
上述封装的原因是我个人的看法。一些朋友说,整体封装在ProConn使用没有效果。我不懂这个。请告诉我。


只有把最关键的部分司机= {微软Access Driver(* .mdb)};UID =;密码= 123;DBQ =server.mappath(分贝。ASP )

分析此部分的内容以封装。
它的前半部分是一个字符串:
司机= {微软Access Driver(* .mdb)};UID =;密码= 123;DBQ =
连接到字符串后半部分的另一个字符串。
在下半年的其他字符串的server.mappath对象函数的返回值。



此封装的操作是从下面开始的。
弗斯特
在VB中建立一个新的ActiveX DLL项目,该项目的名称更改为的condbdll方法1名,和一班的名字改为CS
调用这个DLL时,将使用工程名称和方法名,每个人都可以根据自己的命名规则定义它,但请注意它。
dll的代码部分写如下:

冷响应
昏暗的RQ要求
应用模糊AP
作为服务器的模糊SR
作为会话的弱SN

市民Sub OnStartPage(myscriptingcontext作为scriptingcontext)
设置= myscriptingcontext。响应
Set RQ = MyscriptingContext.Request
SR = myscriptingcontext服务器设置。
AP = myscriptingcontext应用设置。
Sn = myscriptingcontext会话设置。
端子

市民Sub OnEndPage()
设置
设置RQ =没有
设置SR =无
设置ap
设置无
端子
上面的语句是必要的,简化了原始对象并处理了两个基本函数。

公共函数ConnectDB()为变异

connectdb =司机= {微软Access Driver(* .mdb)};UID =;密码= 123;DBQ =

端功能
上面的函数是处理字符串的前半部分,并直接返回字符串的内容。

下面的函数被定义为处理内容的后半部分
公共函数DBPath()为变异
mdbquot = sr.mappath(分贝。ASP )
端功能
注意使用SR,不要使用服务器

关键的一步是加入微软Active Server Pages ObjectContext对象库项目。
添加方法,在打开对话框中的项目参考中选择菜单,选择。
是的,你还必须选择微软ActiveX数据对象2.6库

在上述操作之后,我们可以编译和生成DLL(不要忘记以前的修改和方法名称的名称)

准备数据库文件DB.asp(由db.mdb变后缀,密码123)

下面是调用封装的连接数据库的ASP文件代码:
/ / proconn.asp
<
昏暗的钰航
集钰航= server.createobject(数据连接)
昏暗的condb
集condb = server.createobject(condbdll。康)
condb是dll创建对象

昏暗的strconn
定义字符串
strconn = condb.connectdb()ConDB.DBPath()
连接一个字符串的两个部分组成一个字符串
钰航。Open StrConn
执行数据库对象操作
%>


因为它是由自己创建的DLL,必须在将其复制到相应目录之后注册使用它。
在操作过程中执行注册方法:
luanluandbconn.dll regsvr32.exe

取消DLL注册的方式是:regsvr32.exe /你luanluandbconn.dll

注册完成后,我们的工作基本上完成了,现在我们可以使用这种包方法连接目标数据库了。

但有一件事需要特别注意的是:
因为
昏暗的condb
集condb = server.createobject(condbdll。康)
condb是dll创建对象
这是在ASP创立的对象包括钰航,让我们记得释放这两个对象在任何其他ASP文件,我们使用proconn.asp(参考)。
proconn.close
集钰航=没有
集condb =没有
否则,系统将变得越来越难以忍受,因为对象没有被释放。

至于封装ASP代码连接到access数据库的方法,我想充分应用其他数据库的连接方法。

其他数据库连接的封装是相同的。