当前位置: 首页 > news >正文

ActiveX分类

本文摘录自书籍《Visual C++实践与提高--ActiveX篇》 宇鹏等编著 中国铁道出版社

ActiveX技术发展至今,已经产生出了多种组件类型,其中主要有以下几类:
1)ActiveX服务器
2)ActiveX容器
3)ActiveX自动化服务器
4)ActiveX自动化控制器
5)ActiveX控件
6)ActiveX文件
7)COM组件
下面将分别予以介绍。

ActiveX服务器
        ActiveX服务器是可以为ActiveX容器创建ActiveX对象的应用程序,它支持ActiveX对象的可视化编辑和在位编辑。在所有ActiveX服务器程序中,一小部分只能支持嵌入对象和只能支持链接对象,而大部分程序既支持嵌入对象,也支持链接对象。
        ActiveX服务器可以分为两类:小型服务器(mini-server)和全功能服务器(full-server)。全功能服务器还可以进一步划分为单文件全功能服务器(SDI full-server)和多文件全功能服务器(MDI full-server)。举个例子就清楚多了,字处理软件Word中经常使用的绘图工具Microsoft Draw就是典型的小型服务器,Windows“附件”自带的“画笔”就是典型的单文件全功能服务器,而著名的流程图绘制软件Visio就是典型的多文件全功能服务器。

ActiveX容器
        ActiveX容器是能够将嵌入或链接ActiveX对象合并到自己的文件中的应用程序。ActiveX容器应用程序所管理的文件,可以实现ActiveX对象和文件自身数据的无缝集成。用户可以插入一个新的ActiveX对象,也可以在位编辑一个已经存在的对象,还可以改变插入到文件中的ActiveX对象的位置和大小。比如在Word中创建或插入其他ActiveX服务器应用程序,比如画笔和Visio等所创建的ActiveX对象,这时Word表现为ActiveX容器。

ActiveX自动化
        ActiveX自动化(ActiveX Automation)是Microsoft Office的重要策略之一。通过ActiveX自动化,可以把具有通用功能的某个应用程序,或者程序中具有通用性的某个功能作为ActiveX自动化对象,公开和暴露给其他应用程序,使其他应用程序也可以很方便地使用这些功能,这就实现了在应用程序一级的重用。例如Word里面的“拼写检查”功能在Outlook里面也用到。ActiveX自动化服务器是可以由其他应用程序编程驱动的ActiveX组件。自动化服务器至少包含一个,也可以包含多个可供其他应用程序生成和链接的基于IDispach的接口。ActiveX自动化服务器可以是基于DLL的,也可以是基于EXE的;按运行方式可以分为进程内服务器和进程外服务器;进程外服务器按运行地点可以分为本地(Local)服务器和远程(Remote)服务器。

ActiveX自动化控制器
        ActiveX自动化控制器是指那些使用和操纵ActiveX自动化服务器的应用程序。微软公司著名的开发工具Visual Basic和Visual Basic for Application就是ActiveX自动化服务器的一个最好的例子,有了编程语言,您就可以生成,使用和删除ActiveX自动化服务器,好像它们只是编程语言的一个子集一样。

ActiveX控件
         ActiveX控件是微软公司提供的功能强大的程序设计和开发技术。ActiveX控件既是一个自动化对象,也是一个标准的COM对象,同时它还是一个界面元素,这与Windows所提供的其它普遍控件一样。

COM组件
        COM,即组件对象模型,它是一种以组件为发布单元的对象模型,这种对象模型使各软件组件可以用一种统一的方式进行交互,可以这样讲,COM组件技术是整个ActiveX技术的基础。

至于ActiveX文件是什么咚咚,书上没有说,也没有找到相关资料,不想误人子弟,请大家自己查阅。

转载于:https://www.cnblogs.com/Csynine/archive/2005/07/14/192976.html

相关文章:

  • 通过gem安装rails
  • 辞职了……
  • 从sql2000导入数据到sql2005的问题
  • SqlDataAdapter的几种常用方法
  • 推荐好书《JOEL说软件》
  • WorkFlow 实施记录(1)
  • 客户端效果总结
  • Movie
  • C#.Net一百零一夜(第一夜)
  • 华为成功破解磁悬浮列车WCDMA无缝覆盖难题
  • 数据结构-翻牌游戏
  • TreeView初始化,返回节点值的方法(转)--收藏
  • ASP.NET中的ViewState
  • 通过XMLHTTP发送请求
  • 由一段游戏层代码想到的
  • [译] React v16.8: 含有Hooks的版本
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 07.Android之多媒体问题
  • Apache的80端口被占用以及访问时报错403
  • CAP 一致性协议及应用解析
  • ES6系统学习----从Apollo Client看解构赋值
  • java多线程
  • Java新版本的开发已正式进入轨道,版本号18.3
  • Laravel5.4 Queues队列学习
  • React Transition Group -- Transition 组件
  • 飞驰在Mesos的涡轮引擎上
  • 算法系列——算法入门之递归分而治之思想的实现
  • k8s使用glusterfs实现动态持久化存储
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • $.ajax()
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (pytorch进阶之路)扩散概率模型
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (没学懂,待填坑)【动态规划】数位动态规划
  • (太强大了) - Linux 性能监控、测试、优化工具
  • (终章)[图像识别]13.OpenCV案例 自定义训练集分类器物体检测
  • (转)详解PHP处理密码的几种方式
  • (转载)利用webkit抓取动态网页和链接
  • ***检测工具之RKHunter AIDE
  • .java 9 找不到符号_java找不到符号
  • .net Application的目录
  • .net core 源码_ASP.NET Core之Identity源码学习
  • .NET Framework .NET Core与 .NET 的区别
  • .Net转Java自学之路—SpringMVC框架篇六(异常处理)
  • @ModelAttribute使用详解
  • @Query中countQuery的介绍
  • [BZOJ 4598][Sdoi2016]模式字符串
  • [CCIE历程]CCIE # 20604
  • [CSAWQual 2019]Web_Unagi ---不会编程的崽
  • [Golang]K-V存储引擎的学习 从零实现 (RoseDB mini版本)
  • [Java算法分析与设计]--线性结构与顺序表(List)的实现应用
  • [jobdu]不用加减乘除做加法
  • [LeetCode] Contains Duplicate