【VB开源代码栏目提醒】:网学会员,鉴于大家对VB开源代码十分关注,论文会员在此为大家搜集整理了“ActiveX 文档 - 期刊论文”一文,供大家参考学习!
14 福建电脑 2004年第2期 ActiveX 文 档 邵祖铭 (上海卢湾区业余大学计算机系,上海200020) 【摘要】 奉文舟绍了在Visual Basic中软件重用的主要手段ActiveX部件中的ActiveX文档。
并用实倒说明 AcfiveX文档的制作与应用。
【关键宇】 OOP ActiveX部件 OLE ActlveX控伟 ActiveX文档 随着软件需求日趋复杂,软件的数量急剧睇胀.维护的难度也越来越大.开发成本令人吃惊地不断增高,而失败的软件开发项目却屡见不鲜,“软件危机”就这样开始了。
为了解决“软件危机”,
软件重用(Softwsxe Reuse.又称软件复用或软件再用)的概念也就应运而生。
早在1968年的NATO软件工程会议上就已经提出可复用库的思想。
自从面向对象程序设计方法(ooP)的出现,人们逐渐有越来越多的软件重用的手段。
在Visual Basic中AcdveX部件是软件重用的主力军。
实际上,ActiveX就是大家熟知的OLE技术的 圈2 Aetivex文档与Aetivex程序发展。
在VB中.所谓ActiveX部件是指一些可执行的
代码.即 2.AetiveX文档与OLE技术.e耻、.dll或ocx文件。
它们有的有界面,有的没有界面。
由于这 ActiveX文档是在OLE文档的基础上发展起来的。
OLE文些
代码文件在设计的时候,严格遵循ActiveX的规范,所以程序 档的服务程序在0LE容器程序的子窗口中运行.并占有容器文员能够很方便地通过ActiveX技术将这些部件组装到自己的应 档视图的一个矩形区域。
当文档对象被激活时.服务程序接管了用程序中去。
容器程序的菜单和工具条;而AcdveX文档服务程序则接管了容1、AetiveX文档 器应用的整个框架窗口,并且文档总是处于活动状态。
运行在容 在VB中ActiveX部件包括ActiveX控件、ActiveX文档和代 器框架窗口中的ActiveX文档服务程序,其运行方式与它单独运码部件三种类型。
ActiveX控件是大家耳熟能详的,不再赘述。
代 行的模式基本一样。
码部件类似于类库,应用程序通过创建一个对象来使用
代码部 除了在界面上ActiveX文档与OLE文档非常相似之外,A舢件,同时调用对象的属性,方法和事件。
其中的对象是根据
代码 tiveX文档突破了OLE文档的桌面环境,进一步可以与社4览器部件提供的一个类创建的。
在较早一些的论述中,
代码部件被称 (即MicmsoftIntemetExplorer)结合起来。
在IE中可以直接打开远为OLE自动化服务器。
唯独ActiveX文档,介绍较步。
“ActiveX 程Web站点上的文档文件,而只需给出一个URL,比如:http://文档”中的“文档”容易引起误解。
Microsoft Visual Basic ActiveX www.someone.corn/examtple.doc。
于是浏览器会在其窗口中打开文档与word文档是类似的,只不过在创建Visual Basic AetiveX MicrosoftWord文档.而且Word会接管洲览器的菜单和工具条。
文档时.“文档”和应用程序之间的界限变得模蝴不清了。
传统的 当然,前提条件是机器上已经安装了MicrosoftWord程序,如果没文档(如Word文档)是静态的,而AcdveX文档却不是如此。
它 有安装的话,浏览器会提示下载文档文件。
不仅有应用程序的功能,而且还有文档的灵活性——当用户打 ActiveX文档和ActiveX控制都是OLE技术与Intemet结合开一个AcdveX文档时.将不仅拥有应用程序的全部功能,而且 之后发展起来的新技术,它们都是ActiveX技术体系中的重要组能保持和发布应用程序原有数据的“备份”,因而,“
文档”实际上 成部分,而且,Mie四ftInternetExplorer是它们共同的容器,但两是主动的。
种技术有显著的区别.概括如下: ActiveX
文档不是全新的概念。
比如,Word文档与Word应用
程序类型不同。
ActiveX文档的服务程序运行在自己的进程程序并不相同——word文档(扩展名为.doc)包吉实际的内容, 中,通常服务程序是一个EXE程序;而ActiveX控制通常是一个而Word应用程序(Winword eke)被用来创建文档。
可以在其它 DLL或OCX程序,它运行在其容器进程中。
容器中查看Word文档。
此时,Word应用程序提供对象,另一个 界面方式不同。
ActiveX文档服务程序占用谢览器的整个窗ActiveX窖器(如Interne|Explorer)可以通过这些对象来查看和激 口;而ActiveX控制通常只占用浏览器窗口的一个矩形区域。
话文档。
这种机制对于Visual Basic创建的AetiveX文档也有效。
在HTML文件中的使用方式不同。
ActiveX文档与HTML文 如图1、2所示,创建基于ActiveX文档的工程时,相当于创 件无关,但可以在HTML中通过超链接指向ActiveX文档文件;建可以包含在ActiveX容器(如Internet Explorer)中的Visual 而AcdveX控制作为对象被嵌入在HTML文件中。
Basic”文档”。
编译AetiveX文档将创建Visual Basic文档文件 数据保存方式不同。
AcdveX文档服务程序可以操作磁盘文(扩展名为.vbd)和它相应的服务器——Activex.dll、或ActiveX 件.丽ActiveX控制一般不操作磁盘文件。
.e耻文件。
换句话说。
.vbd文件与即∞或.dll文件相对应,而 服务程序转载方式不同。
AetiveX控制可以自动下载并由浏.doe文件与Winword.eke文件相对应。
览器登记
注册.而ActiveX文档服务程序不支持这种特性。
ActiveX文档超越了OLE文档的桌面环境,为浏览器提供 了强大的扩展功能.但由于在浏览器中打开AcdveX文档要求事 先在客户机上装有ActiveX文档服务程序,所以它的使用受到了 很大的限制.不过,在一般的企业内部罔(Intranet)环境下,使用 ActiveX文档技术,通过浏览器查看企业内部的~些资料,比起 制作复杂的网页或开发专门的
查询系统要方便、快捷得多。
3、创建ActiveX文档 创建ActXDcc工程的第一步是:在ActiveX EXE T程中添 Winword.ere与WoM文档 加一个UsefDocament对象。
然后将一个CommmldButton控件和 2004年第2期 福建电脑 15一个TextBox控件添加刊窗体上。
最后。
使用Hyperlink对象。
加 8.按照下表改变两个控件的属性值人用来漫游到另一个URL的
代码。
Commandl的属性名称 属性值 要倒建AcfiveX文档,请按照以下步骤执行: Name cmdNavigateTo1.在“文件”菜单中.单击“新建工程”打开对话框“新建工程”。
Caption Navigate。
ro(这将会关闭当前的工程或工程组;
系统会提示是否需要保存所 Textl的属性名称 属性值作的任何修改)。
双击“AetiveX文档EXE”图标。
Name txtURL Visual Basic自动往工程中添加一个UserD∞ument设计 Text http://www.microsoft.COm器。
如果设计器没有显示出来,可在“工程资源管理器”窗口中用鼠标右键单击设计器的缺省名“UserDocumentI”,然后单击“查看 9.在Fi∞tDoc的设计器上,双击CommandButten控件“Navigate对象”。
当
设计器显示出来时,其缺省名将出现在在标题栏中。
T0”,在其Click事件中加人下列
代码:2.在“属性”窗口中,双击“名称”属性,把缺省名UeerDocumentl Friv*Lte suh cmdNavigateToClick(1 ’使用Hypedink对象的方法Navi鲥eTo改为FirstDoc。
这个新名字将在设计器的标题及“工程资源管理 ’定位至txtURL中的URL。
器”窗口中显示出来。
HyPdmk NmvlgmbTo mUP,LText End Sub3.在“工程贤源管理器”窗口中,单击图标“工程1”。
在“属性”窗 重点:在使用方法NavigateTo时,必须包含URL的协议部口中,双击“名称”把工程名改为ActXDoc。
现在,设计器的标题 分。
例如,在缺省情况下上面的
代码将定位至TextBox控件*条成为:“ActXDoc—FirstDoc(UserDocument)”o tURL的Text属性的属性值:“http://www.mictYmaft.伽Ⅲ”。
4.在“工程资源管理器”窗口中,双击Fitstl)oc图标使之出现在 在“文件”菜单中.单击“保存工程”保存工程文件。
用下表中桌面的最前面。
的名字进行命名。
Visual Basic能够自动提供指定的扩展名。
5.在“工具箱”中,双击“CommandBuEon”图标把一个Command-Breton控件放到设计器上。
I文件 文件名 扩展名6在。
工具箱”中,双击“文本框”图标,把一个TextDox控件放到 I用户文档 FirstDoc .dob设计器上。
工程 AeⅨ∞ .vbp7.按照下图的布局放置两个控件: 这样,ActiveX文档应用程序就创建好了,读者可以按F5键 运行以观看效果。
我们也可以使用ActiveⅨ文档移植向导 (AcfiveX D∞tmmnt Migration Wi阻Id)。
将现成的应用程序转换为 AcdveX文档。
ActiveX文档移植向导在“外接程序”菜单中。
当然ActiveX文档的内容并不仅仅是本文所能够完全容纳 的,实际上在微软的MSDN中有更为详细的描述。
图3 ActiveX文档设计窗口 参考资料【1】Day埘Krdglinski,Inside Visual C十+.Micmsoft Press,1997.12】 ActiveX文档技术介绍,北书走学
计算机科学技术研究所潘爱民,(at电脑世界)1999.4—6.3g垃两孝岛沁昏牙址耳窖塌譬国窜毡岛簪墙她犁寥塌鞋辑坷啦昏留弛岛琴若铀岛窜甥她A辑茸的彝牙强风学墙钧¥帮弛摹客增&替墙譬莽窖蜷蜘串簪皓离皇鼠(上楼第19百) 环境。
在智能高效方面应该在运行中具有高度的自治性,能够依安全性解决
方案,从而保证为Mobile A舻nt提供—个安全的运行 据外部环境的变化作出积极的反映,并且始终保持很高的效率。
参考文献【l】 Dj姐{buted Operating SyBt帅.Andrew-.Ttmmbaum .【2】PHAM v.KARMOUCHA.Mobile software agents;虮overvlew〔J】.IEEE CommunicationM增d帅.1998.36(7)L26—37【3】Harrison C et d,Mobile sgent;are they a good idea7.Technical Report,RC 19887.IBM,Mar.1995【4】HAGEN L BREUGST M,MAGEDANZ L Impacts。
f mobile agent technology on mobile communication system evolufion〔J】.眦Pemonal Coma-munications.1998.12(3)1.53—60【5】TIAIEIAIIS一77I.wirek蛆Inlelllg明tNetwork Capabilitles〔S】【6】 MAGEDANZ T.ECKARDT T..Mobile se一∞agents and IIIeir impacts to矾一酬settee anehiumtures〔AJ.IEEE in Wo“op’%IcJ.Melbou加e,Australia.Apt 1996【71 BOHORjS C.PAVLOU G,CRUICKSHANK H,Using mobile 4鲫b p盯南邛删manager眦nt〔A〕.Network for network Operations and Ma咿amSympoaium2000【c】.Hanolulu,Hawaii,Apt 1996.637—652 .