- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12章 使用Microsoft自动化组件
在Servers页面上的组件是TOleServer的子类。类型库(.TLB)被引入到Delphi中。一个类型库是一种描述一个自动化服务器接口的特殊文件。当一个TLB被引入到Delphi的时候,Delphi将这个类型库封装到一个组件类中;这个组件可以被安装到VCL中。在组件面板中Servers属性页上的组件是自动化服务器,每个自动化服务器代表Microsoft Office中一个特定的应用程序部分。
注意:本章包括一个摘自Evil Empire详细材料的讨论。建议你学习这门技术。如果您是一个反Microsoft的成员,您可以跳过本章,但是要记住Inprise为我们提供代表这些应用程序服务器的组件有它足够的理由。如果要使用Delphi控制Microsoft Office可以帮助您的话,考虑使用这些组件。
自动化是COM协议的一部分。自动化描述了服务器应用程序怎样将接口提供给客户应用程序以及客户端怎样通过编程控制服务器。客户应用程序被叫做自动化控制器。自动化控制器可以是使用任何支持自动化的语言编写的应用程序或者动态链接库。您可以很容易地在Delphi中创建客户端控制器和自动化服务器。
本章介绍了怎样使用当今世界上一些最具有特色的对象——Microsoft Office应用程序。绝大多数,可能是全部的Office都可以用作自动化服务器。这意味着它们可以被用作独立的应用程序或者应用程序服务器。使用这些功能强大的应用程序服务器可以使开发者能够提供功能强大的文字处理、数据库、数字处理和关系管理的能力,这取代了许多用户已经购买的一些现有的代码。
12.1 TOleServer
TOleServer是TComponent的子类。OleServer对象具有TComponent的所有特性和方法,并且这些特性和方法都在TOleServer类中被定义了。Servers属性页上的组件是Microsoft Offiec自动化服务器,TOleServer是这些组件的直接祖先类,所以很好的理解ToleServer可以使您有一个更高的起点。表12.1列出了OleServer中所有的特性,表12.2列出了OleServer中所有的方法。除了OleServer特性,TOleServer的每一个子类将引入在类型库中定义的行为和数据。我们将在本章的后面部分作详细的介绍。
表12.1 TOleServer特性,其中AutoConnect,ConnectKind和
RemoteMachineName是由TOleServer引入的公开特性
特性 说明 AutoConnect 如果这个特性为True,服务器在运行时连接。如果在运行时将其特性改为False将不会在运行时产生影响 ConnectKind 由TConnectKind枚举定义,描述服务器怎样被连接。比如说,ckRunningOrNew将连接到服务器的一个运行实例或者开始一个新的实例。可以选择的项为:ckRunningOrNew,ckNewInstance, ckRunningInstance, ckRemote,ckAttach ToInterface EventDispatch 保护特性,可以被为COM事件特性服务的子孙类所使用 RemoteMachineName 指定运行服务器的机器名,将ConnectKind特性设置为ckRemote,您将连接到其他独立计算机的服务器上 ServerData 保护的记录特性,它保存了有关连接到的自动化服务器的信息 下面用表12.1的特性作一个示范,遵循下面所列的步骤,将连接到您的网络中其他计算机上的一个Microsoft Word实例(需要远程计算机的名称,并且远程计算机必须有一个Microsoft Word的一个拷贝。在“控制面板”中的“网络”小应用程序中的“标识”属性页中的“计算机名”域中可以找到计算机名称)。
1.创建一个新的Delphi应用程序。
2.在窗体上的任何位置放置一个TButton组件。
3.在窗体上放置一个TWordDocument组件。
4.在Object Inspector中(可以按F11打开),将WordDocument组件的Remote MachineName特性设置为安装有Microsoft Word的计算机名称(在“控制面板”中的“网络”小应用程序中的“标识”属性页中的“计算机名”域中可以找到计算机名称或者你也可以使用机器中相应于RemoteMachineName的IP地址)。
5.第4步将ConnectKind特性改变为ckRemote。
6.双击第2步中窗体上的按钮,为按钮添加Click事件处理程序。
7.将下面的代码添加到第6步创建的事件处理程序中。
procedure TFor
文档评论(0)