CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

一个简单的组件的应用,我错在哪里???

楼主oldgameman(月光轮舞)2001-09-08 12:51:09 在 VB / 基础类 提问

Private   Request   As   Request  
  Private   Response   As   Response  
  Private   ScriptingContext   As   ScriptingContext  
  Private   strDSN   As   String  
  Private   AspOutPut   As   String  
   
   
  Public   Sub   OnStatrPage(PassedScriptingContext   As   ScriptingContext)  
      Set   ScriptingContext   =   PassedScriptingContext  
      Set   Request   =   ScriptingContext.Request  
      Set   Response   =   ScriptingContext.Response  
             
  End   Sub  
   
  Public   Sub   login()  
      Register  
      Response.Write   (AspOutPut)  
      Response.End  
  End   Sub  
   
  Private   Sub   Register()  
      Dim   strConn   As   ADODB.Connection  
      Dim   strRes   As   ADODB.Recordset  
      Dim   strSQL   As   String  
       
      Set   strConn   =   New   ADODB.Connection  
      Set   strRes   =   New   ADODB.Recordset  
          strConn.Provider   =   "sqloledb"  
          strConn.Open   "database=ASPALL;server=;uid=oldgameman;pwd=9597"  
          strSQL   =   "SELECT   bookname   FROM   book   "  
      strRes.Open   strSQL,   strConn  
      Do   While   Not   strRes.EOF  
            AspOutPut   =   strRes("bookname")  
            AspOutPut   =   AspOutPut   &   "<br>"  
            strRes.MoveNext  
      Loop  
       
  End   Sub  
   
  Public   Sub   OnEdnPage()  
      Set   ScriptingContext   =   Nothing  
      Set   Request   =   Nothing  
      Set   Response   =   Nothing  
  End   Sub  
   
   
  在ASP里调用,提示  
   
  "未设置对象变量或   With   block   变量   "  
   
  怎么回事啊!!!!!!!!!!  
  我写的对不对?  
  我是第一次写组件,拜托.... 问题点数:80、回复次数:4Top

1 楼hehongyu2000(Henry)回复于 2001-09-10 21:35:03 得分 80

领分,   领分,   谢谢,   谢谢!Top

2 楼sunbf(www.51-pass.com)回复于 2001-09-10 23:16:09 得分 0

改成这样试试  
   
  <%  
  dim   Request    
  dim   Response    
  dim   ScriptingContext    
  dim   strDSN    
  dim   AspOutPut    
   
   
  Sub   OnStatrPage(PassedScriptingContext)  
      Set   ScriptingContext   =   PassedScriptingContext  
      Set   Request   =   ScriptingContext.Request  
      Set   Response   =   ScriptingContext.Response  
           
  End   Sub  
   
  Public   Sub   login()  
      Register  
      Response.Write   (AspOutPut)  
      Response.End  
  End   Sub  
   
  Private   Sub   Register()  
      set   strConn=server.createobject("ADODB.Connection")  
      set   strRes=server.createobject("ADODB.Recordset")  
      Dim   strSQL  
          strConn.Provider   =   "sqloledb"  
          strConn.Open   "database=ASPALL;server=;uid=oldgameman;pwd=9597"  
          strSQL   =   "SELECT   bookname   FROM   book   "  
      strRes.Open   strSQL,   strConn  
      Do   While   Not   strRes.EOF  
          AspOutPut   =   strRes("bookname")  
          AspOutPut   =   AspOutPut   &   "<br>"  
          strRes.MoveNext  
   
      Loop  
      response.write   aspoutput  
  End   Sub  
   
  Public   Sub   OnEdnPage()  
      Set   ScriptingContext   =   Nothing  
      Set   Request   =   Nothing  
      Set   Response   =   Nothing  
  End   Sub  
  %>Top

3 楼sunbf(www.51-pass.com)回复于 2001-09-10 23:23:39 得分 0

直接写到<%     %>中,不要用那些过程  
  象你那样写会运行吗?在哪里调用啊Top

4 楼sunbf(www.51-pass.com)回复于 2001-09-10 23:27:46 得分 0

可以参考一下我的这个例程  
  <%  
          Response.Buffer   =   True  
          Dim   Db  
          Dim   Rcc  
          Dim   SqlStr  
          Dim   Temp  
          Dim   ConStr  
          SqlStr   =   Request.Querystring("SqlStr")  
          UseID   =   Request.Querystring("UseID")  
          Password   =   Request.Querystring("PassWord")  
          ConStr=   Request.Querystring("ConStr")  
          while   not   instr(SqlStr,"±")=0    
          SqlStr=left(SqlStr,instr(SqlStr,"±")-1)   &   "+"   &   Mid(SqlStr,instr(SqlStr,"±")+1)  
          wend  
          while   not   instr(SqlStr,"。/。")=0      
          SqlStr=left(SqlStr,instr(SqlStr,"。/。")-1)   &   "%"   &   Mid(SqlStr,instr(SqlStr,"。/。")+3)  
          wend  
          Set   Db   =   Server.CreateObject("ADODB.Connection")  
          Set   Rcc   =   Server.CreateObject("ADODB.Recordset")  
          Db.Open   ConStr   &   ";PWD="   &   Password   &   ";UID="   &   UseID  
          Rcc.MaxRecords=10  
          Rcc.Open   SqlStr,   Db   ',adOpenStatic,adLockReadOnly  
          If   Err.Number   =   0   Then  
                  IF   Rcc.EOF   THEN  
      Response.Write   0  
  ELSE  
          Response.Write   1  
  END   IF  
          Else  
                  Response.write   "Err:"   &   Err.Number  
          End   If  
          Rcc.Close  
          Db.Close  
          Set   Rcc   =   Nothing  
          Set   Db   =   Nothing  
  %>Top

相关问题

  • 索取简单的三层应用中COM组件的源程序
  • 请教Image组件应用
  • [初学]麻烦哪位大虾用ATL写个简单的COM组件并应用的小程序!
  • 简单的组件问题
  • 在win2000客户端编译好com组件,然后用本机组件服务-〉计算机-〉server(局域网内的一台服务器)-〉COM+应用程序-〉...->组件-〉注册新组件,提示 80070721 错误,注册失败
  • 组件技术在.Net中的应用?
  • 新手上路:DataGrid组件的应用
  • 关于TDBChart组件的应用
  • 关于Ad Rotator组件的简单的问题?大家帮帮忙!看看错在哪里!(我是第一次用这个组件)
  • VC组件的简单问题!!

关键词

  • strres
  • scriptingcontext
  • aspoutput
  • strconn
  • subpublic
  • adodb
  • sub
  • nothing
  • strsql
  • response

得分解答快速导航

  • 帖主:oldgameman
  • hehongyu2000

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo