将连接数据库连接代码隐藏在DLL中的问题

miniburger 2004-10-23 10:13:54
以下是在网上找到的技术文章,于是我照上面写的,在VB里创建了一个DLL文件==========


其实,大家在书写asp程序时,最担心的可能就是数据库的连接信息,会被一些人看到,进行一些破坏。下面我们用vb6.0来做一个动态链接库(.dll)来隐藏数据库的连接信息。

  启动vb6.0,新建-->Active dll工程。单击"工程"-->引用,选择"microsoft active server pages object library"

  和"microsoft activeX data objects 2.1 library"两项。将类模块的名称改为dcss.将工程的名称改为yygwy.保存工程文件yygwy.vbp和类文件dcss.cls。

编译生成dcss.dll文件。注册regsvr32 路径dcss.dll。

  用visual interdev打开global.asa文件.当然了,你也可以在其它文件中使用。  

  set dcss=server.CreateObject("yygwy.dcss")

  oconn=dcss.datasource()

  application("strconn")=oconn   

  在其它的页面中如下调用即可:   

  set objConn = Server.CreateObject("ADODB.Connection")

  objConn.Open application("strconn")





  在dcss.cls中写入:   

  Private myscriptingcontext As ScriptingContext

  Private myapplication As Application

  Private myrequest As Request

  Private myresponse As Response

  Private myserver As Server

  Private mysession As Session

  Public Sub onstartpage(passedscriptingcontext As ScriptingContext)

  Set myscriptingcontext = passedscriptingcontext

  Set myapplication = myscriptingcontext.Application

  Set myrequest = myscriptingcontext.Request

  Set myresponse = myscriptingcontext.Response

  Set myserver = myscriptingcontext.Server

  Set mysession = myscriptingcontext.Session

  End Sub   

  Public Sub onendpage()

  Set myscriptingcontext = Nothing

  Set myapplication = Nothing

  Set myrequest = Nothing

  Set myresponse = Nothing

  Set myserver = Nothing

  Set mysession = Nothing

  End Sub
  


  Public Function datasource() As Variant

  datasource = "driver={sql server};server=yang;uid=sa;pwd=; database=dcss"

  End Function


然后我创建 一个ASP文件,代码如下=================

<%
set dcss=server.CreateObject("zqtax.class1")

  oconn=dcss.datasource() '运行 时这里就开始出错了

response.write oconn
%>


Microsoft VBScript 编译器错误 错误 '800a0408'

无效字符

/tt/show2.asp,行3

  oconn=dcss.datasource()
^


请大家帮忙看看是什么问题,谢谢!
...全文
90 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
miniburger 2004-10-23
  • 打赏
  • 举报
回复
哈哈,OK了!换了一个数据库连接字串,搞掂了,谢谢大家!!!
miniburger 2004-10-23
  • 打赏
  • 举报
回复
TO mikespook:果然,改成这样就没问题了
<%
set dcss=server.CreateObject("zqtax.class1")
oconn=dcss.datasource()response.write oconn
%>


但是连接数据库还是不行

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'

[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序


会不会是这句有问题!!

driver={sql server};server=yang;uid=sa;pwd=; database=dcss


bolm 2004-10-23
  • 打赏
  • 举报
回复
用ASP2DLL编译后注册组件!
mikespook 2004-10-23
  • 打赏
  • 举报
回复
<%
set dcss=server.CreateObject("zqtax.class1")

  oconn=dcss.datasource() '运行 时这里就开始出错了

response.write oconn
%>
-----------------------------------
  oconn=dcss.datasource() '运行 时这里就开始出错了
^^^^这里你用的是全角的空格,你换成TABLE或者半角字符~~~~~这种错误,一定要看错误提示
xdk 2004-10-23
  • 打赏
  • 举报
回复
晕。不要把代码全抄。上面的类是:
 在dcss.cls中写入:   

  Private myscriptingcontext As ScriptingContext
.
.
.
.
.

你调用时怎么是zqtax.class1
错了。错啊。。哈哈。
xdk 2004-10-23
  • 打赏
  • 举报
回复
创建不了这个对象吧。。。
miniburger 2004-10-23
  • 打赏
  • 举报
回复
连接数据库是这一段

datasource = "driver={sql server};server=yang;uid=sa;pwd=; database=dcss"

已经排除是连接数据库的问题,因为我直接用ASP代码来连接是无问题的。

davs 2004-10-23
  • 打赏
  • 举报
回复
连接数据库的问题吧

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧