使用JavaScript中的OLE Automation
在前面的教程中我们已经有提到JavaScript中的OLE Automation。在本节的教程中,我们将一起来讨论一下JavaScript是怎样利用Automation的强大功能来扩展服务端脚本的能力的。
实际上Automation并不是新的事物。它已经在好几年前就流行了,但是被ActiveX脚本语言的支持是一个新的应用。如果你已经有了Visual Basic 或者Visual C++的编程背景,本节教程将介绍怎样利用你的经验来创建有用的脚本以控制外部的应用程序。
在你的脚本中控制外部的应用是非常强大的,比如从你的脚本中打开一个Word文档或者一个Excel电子表格。HTML编辑器,比如HomeSite 4.0和HotMetal Pro 6为你提供了丰富的工具使得你可以利用它们到你的主页中去。它们都是封装到ActiveX控件中的。本教程的内容主要有:
什么是Automation
什么是绑定
怎样创建Automation对象的新实例
怎样检索一个Automation对象存在的实例
怎样处理应用程序的实例
怎样提高脚本程序的性能
怎样处理集对象
从下一篇开始,我们对以上的内容逐个介绍。
使用JavaScript中的OLE Automation
什么是Automation
OLE(对象连接和嵌入)Automation允许应用程序完成通讯、交换数据以及控制其它应用程序等等。它还允许一个客户应用程序通过使用暴露对象的界面来创建和控制一个对象。一个Automation对象是可以通过Automation界面暴露给其它应用程序或者编程工具的一个对象。
Automation提供了一个文档案的、标准的方法来创建和访问应用程序。通常,Automation跟Visual Basic是紧密联系的。它有为C/C++开发人员提供了创建可编程的应用程序的强大工具,并且让Visual Basic设计人员访问和操作这些应用程序。这些C/C++程序员提供专业化的用户界面的解决方案并且给Visual Basic程序员提供了从应用程序组件中汇集定制解决方案的一种可靠的方法。
不仅Visual Basic 可以利用Automation,实际上,可编程的对象也可以任何的宏语言或者执行Automation的编程工具来进行访问。用户可以根据当前的知识选择一个编程工具,而不是为每一个应用程序学习新的语言。即使脚本语言,比如VBScript和Jscript页支持Automation 。
控制一个Automation应用程序的关键在于对应用程序的对象模型要有一个较好的理解。每一个应用程序的对象模型是不同的。微软现在声称在Office 程序组中每一个应用程序的每一个函数都可以通过应用程序的对象模型被程序员访问。这个Office程序组通过它的对象模型暴露了成千上万的对象、方法以及属性给程序员。这个消息对程序设计人员来说无疑是一个好消息。
但是,学习特殊应用程序的对象模型通常是很困难的,因为缺少描述各种软件对象的相关资料文档。微软的Office应用程序,比如在网上为程序员提供了许多资料文档,但是还有许多其它的应用程序不提供必须的文档。
在Microsoft Visaul Basic中的对象浏览器将对象、方法、属性以及外部Automation对象的常量展现在对话框中。这个工具同样适用于脚本设计中,因为应用程序的全局常量在脚本环境中不是有效的。如果你利用Automation来编写脚本,你可以适用对象浏览器来取出必需的常量的值,这样你就可以在脚本中来显性指定它们了。