ASP中ActiveX控件的内嵌及调用

active|activex|控件|activex|控件

懂ASP(Active Server Pages)的人很多,但能用ASP自如地调用ActiveX控件的人却不多;如果不调用ActiveX控件,则可以说微软当初设计ASP的初衷根本没有达到。众所周知,ActiveX技术是微软在Internet上除了IE外的另一个新举措,可以说该技术渗透在它的整个Internet策略中。ActiveX是一个功能强大的部件,可以用VB、C或C++等语言进行编写,因为是编译性执行,故速度比较快。 在ASP(Active Server Pages)中内建了多个功能强大的ActiveX Server控件,包括Ad Rotator(动态广告生成控件)、BrowserType Capabilities(浏览器相容控件)、Database Access(数据库存取控件)、Content Linking(文件链接控件)和File Access Component(文件存取控件)等。当然,ASP除了可以调用内嵌的ActiveX控件外,还可以调用其他用户编写的标准的ActiveX控件。  
    
      在使用控件前先要进行定义,如:<% Set对象变量名称=Server.CreateObject("ADODB.Connection") %>,或直接用HTML的<OBJECT>和</OBJECT>标记进行定义,效果一样。  
    
     例:<OBJECT RUNAT=SERVER

   ID=对象变量名称

   PROGID="ADODB.Connection">  
    
      </OBJECT>  
    
     定义好后,我们就可以开始调用它的方法来配合相关工作的进行。  
    
       
    
      一.内嵌各种ActiveX控件的方法和属性  
    
      1.Database Access(数据库存取控件)  
    
      这是一个非常重要的部分,因为50%以上的工作几乎都要涉及到数据库,使用该控件可以说是必不可少的。在ASP中使用ADO(Active Data Objects)来存取数据库资料,如果是远程的数据源,则可采用RDO(Remote Data Objects)。ADO包括以下七个对象类。  
    
      Command:定义一些特别的命令语法,让你可以执行相应的程式。  
    
      Connection:提供对OLE DB信息源的链接。  
    
      Error:用来描述存取数据库时发生的错误。  
    
      Field:以行作为读取信息单元。  
    
      Parameter:使用Command时需传入的参数。  
    
      Property:记录ADO对象的动态特性。  
    
      Recordset:用来保存读取回来的数据库信息。  
    
      下面以一个最普通的例子来说明读取数据库信息、然后发布该信息的步骤。首先在ODBC Driver里建立一个名字为test的System DSN,链接到你的任意一个数据库上;然后用写字板创建一个后缀名为.asp的文本,内容如下。  
    
      <HTML><BODY>  
    
      <%

   set DC=CREATEOBJECT("ADODB.CONNECTION")

   ;定义一个DC为Connection的对象

   DC.OPEN "test"

   ;OPEN是Connection的一个方法,如果你链接的是Access或Foxpro数据库,则可采用上面的方法,如果是其他类似于sql、oracle等需要用户名和密码才允许访问的数据库,则可通过DC.OPEN"test","uid","password"来打开数据库源。

   SQL="select * FROM JOB"

   set RESULT=DC.EXECUTE(SQL)

   ;EXECUTE是Connection的另一个方法,用于执行SQL语句。这里定义RESULT为RECORDSET对象,用于接收SQL语句执行后的返回结果。如果不需要保存返回结果,则可直接调用“DC.EXECUTE SQL"。

   DO WHILE NOT RESULT.EOF

   RESPONSE.WRITE RESULT("NAME")

   ;假设NAME是数据库的一个属性。

   RESULT.MOVENEXT

   ;除了MOVENEXT外,还有MOVEFIRST、MOVELAST等方法,与VB类似。

   LOOP

   RESULT.CLOSE

   %>  
    
      </BODY></HTML>  
    
      从上面的例子中,我们可以清楚地看到,链接OLE DB信息源最常用的类是Connection类,其方法包括OPEN、EXECUTE、CLOSE、BEGINTRANS、COMMITTRANS和ROLLBACKTRANS。如果你很熟悉SQL Script中的回滚操作,那么对BEGINTRANS一定不会感到陌生,最后三个方法是用于对一些事件进行回滚的操作,其语法如下(要补充的一点是,如果你能在数据库里完成回滚的操作,那么最好在数据库里进行,因为这样效率会更高,对系统的影响也就会更少)。  
    
      BEGINTRANS  
    
      语法:[level=]Connection 对象.BeginTrans  
    
      其中level是一long类型的变数,用来存储BeginTrans方法所传回的level值。  
    
      COMMITTRANS  
    
      语法:Connection 对象.CommitTrans  
    
      存储当前的所有动作和结果。  
    
      ROLLBACKTRANS  
    
      语法:Connection 对象.RollbackTrans  
    
      取消所有从BeginTrans开始的工作并重新进行初始化。  
    
      这里只对最常用的Connection类进行了详细的介绍,如果希望进一步了解Database Access其他类库,可访问http://www.microsoft.com/ado/站点。  
    
       
    
      2.Ad Rotator(动态广告生成控件)  
    
     广告在网络上的效果越来越为人们所认识,“网盟”(WebUnion)就是一个很好的范例。一个好的广告发布程序并不容易编写,因为你要考虑包括图片出现的频度、图片的名字、链接的地址、显示的尺寸、还有速度、效率和维护等诸多的问题。当然,如果你们是一个象WebUnion这样的大型站点,则这是必须的;但如果你们只是一个小站点,只是希望简单地动态显示一些图片(包括链接)和方便维护,那么Ad Rotator动态广告生成控件绝对是你的首选。  
    
      为了使你有一个直观的认识,我们将先介绍建立动态广告的步骤,然后再细述其方法。产生动态广告,要涉及到三个文件:

时间: 2024-08-30 04:11:51

ASP中ActiveX控件的内嵌及调用的相关文章

亲密接触ASP.Net(3) asp+中的控件

最近有朋友问我,哪里可以学好ASP+,我早就说过NGWS中带的文档是最好的学习手册,不过由于NGWS的要求太高,还有它的大小(110M)的问题,有一部分兄弟,不能装上它,我给你们一个站点http://www.aspnextgen.com/quickstart/aspplus/ ,上面的文档就是NGWS直接带的,而且这个站点全是由asp+构建的,大家可以直接看到aspx的执行情况,我现在对我们的站点唯一不满的地方就是不能执行aspx,不能给大家看到例程的执行结果. 好了不说多话了,我们这一节要来看

如何注册或注销Access 2007中ActiveX控件

INTRODUCTION 本文描述如何注册或注销 Microsoft Office Access 2007 中 ActiveX 控件. 更多信息 在早期版本的 Access 比 Access 2007, 您可以注册或撤消 ActiveX 控件通过单击 工具 菜单上 ActiveX 控件 . Access 2007, 中无法使用此方法. 如果要注册或撤消 ActiveX 控件, 使用下列方法之一. 方法 1: 使用 VisualBasic 代码要使用 VisualBasic 代码来注册或撤消 Ac

mfc activex控件-MFC中 ACTIVEX控件活动与非活动区别!!!

问题描述 MFC中 ACTIVEX控件活动与非活动区别!!! 请问下 ACTIVEX控件 活动与非活动状态区别?也就是说有窗口和无窗口的区别?谢谢 能详细介绍下不胜感激!!(比如他们用途区别,例子说明更好)

ASP与ActiveX控件交互实战

active|activex|交互|控件 关键字:ASP,ActiveX控件,数字签名,安全 ActiveX控件运行在客户端.我们可以获得客户端的一些信息,如IC卡的信息,客户端的验证等等.但是ActiveX控件也有许多缺点:客户端的部署很困难,如客户端不能正确下载,下载了以后不能正确执行,下载的时候需要设置IE的安全级别等等. 更多的时候,我都在使用COM组件来扩展ASP的功能.准确地说,是服务端运行的Activex Dll组件.使用Server.CreateObject("工程名.类名&qu

ASP与ActiveX控件交互实战(一)

active|activex|交互|控件 龙卷风 关键字:ASP,ActiveX控件,数字签名,安全 ActiveX控件运行在客户端.我们可以获得客户端的一些信息,如IC卡的信息,客户端的验证等等.但是ActiveX控件也有许多缺点:客户端的部署很困难,如客户端不能正确下载,下载了以后不能正确执行,下载的时候需要设置IE的安全级别等等. 更多的时候,我都在使用COM组件来扩展ASP的功能.准确地说,是服务端运行的Activex Dll组件.使用Server.CreateObject("工程名.类

ASP与ActiveX控件交互实战(二)

active|activex|交互|控件 龙卷风 关键字:ASP,ActiveX控件,数字签名,安全 我们来看看如何从服务端获取数据,传递到ActiveX控件中. 1) 初始化时使用参数绑定 2) 运行时得到数据 打开vb6,新建ActiveX控件工程. 工程名:fOcx,用户控件名:UC2 为了方便,我们使用ActiveX控件接口向导-,菜单->外接程序->外接程序管理器->VB 6 ActiveX控件接口向导.确定即可. 打开ActiveX控件接口向导,下一步,对于可用名称和选定名称

ASP与ActiveX控件交互实战(三)

active|activex|交互|控件 龙卷风 关键字:ASP,ActiveX控件,数字签名,安全 问题提出: ActiveX控件得到客户端的信息,如何传递到服务端??? 一种方法就是得到值后,使用Get,Post方式提交,这可能也是最常用的. 有没有更好一些的方法呢? 能不能在控件中直接向服务器发出请求而得到数据呢? 打开vb6,新建ActiveX控件工程. 工程名:fOcx,用户控件名:UC3 添加1个按钮,2个文本框 代码如下: Option Explicit Private Sub C

如何: 通过HTML文档对象模型访问文档中的ActiveX控件的属性 .

如何: 通过HTML文档对象模型访问文档中的ActiveX控件的属性   此文章的信息应用于: Microsoft Internet Explorer (编程) 版本4.0, 4.01, 4.01 SP1, 4.01 SP2, 5, 5.01, 5.5,6.0 概要 CSDN文档中心文章 用 MSHTML 的一点经验 111222(原作) 说明了如何访问在HTML文档对象模型中的网页的元素.内容.但是,有时候开发者实际上需要访问的是网页中ActiveX控件的属性.方法和事件.例如,你在网页载入之

基于MFC的ActiveX控件开发

ActiveX 控件是基于组件对象模型 (COM) 的可重用软件组件,广泛应用于桌面及Web应用中.在VC下ActiveX控件的开发可以分为三种,一种是直接用COM的API来开发,这样做显然非常的麻烦,对程序员要求也非常高,因此一般是不予考虑的:一种是基于传统的MFC,采用面向对象的方式将COM的基本功能封装在若干MFC的C++类中,开发者通过继承这些类得到COM支持功能.MFC为广大VC程序员所熟悉,易于上手学习,但缺点是MFC封装的东西比较多,因此用MFC开发出来的控件相对会比较大,因此比较