当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Javascript实例教程(21) OLE Automation(4)

Javascript
JS option location 页面跳转实现代码
ExtJS 简介 让你知道extjs是什么
ExtJs 学习笔记 Hello World!
ExtJs 学习笔记基础篇 Ext组件的使用
ExtJs 学习笔记 Ext.Panle Ext.TabPanel Ext.Viewport
漂亮的脚本日历,和大家分享
JS Tween 颜色渐变
js 图片轮播(5张图片)
开发跨浏览器javascript常见注意事项
通用JS事件写法实现代码
Js 订制自己的AlertBox(信息提示框)
js 浮动层菜单收藏
JavaScript入门教程(10) 认识其他对象
JQuery 常用方法基础教程
jQuery 页面载入进度条实现代码
jQuery Ajax 全解析
CSS+Table图文混排中实现文本自适应图片宽度(超简单+跨所有浏览器)
Ext JS Grid在IE6 下宽度的问题解决方法
js window.event对象详尽解析
JavaScript 悬浮窗口实现代码

Javascript实例教程(21) OLE Automation(4)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 263 ::
收藏到网摘: n/a

使用JavaScript中的OLE Automation

4.怎样检索一个Automation对象存在的实例

Jscript支持同样Visual Basic中的GetObject()函数。它的一般的语法如下:

var objVar = GetObject([pathname][, class]);

objVar指定了一个变量来保留实例化对象的引用。Pathname是完全的路径和包含ActiveX对象的文件名。Class指定在字符串的表单中对象的类。Class参数使用了语法library.object,这跟ActiveXObject函数的第一参数是一样的。

总得说来,GetObject()函数在一个指定的文件中访问ActiveX 服务器。虽然两个参数是可选的,但是至少要提供其中一个参数。GetObject()函数是在存在ActiveX对象的当前实例的时候使用的。它不创建一个新的实例,比如ActiveXObject()函数。

如果你指定一个空的字符窗(""),GetObject()就返回一个对象的新实例,除非对象被注册为单一的实例,在这种情况下,当前的实例被返回。但是,如果pathname没有指定,对象的当前实例被返回。如果pathname没有被指定就会产生一个错误,并且没有对象的当前实例被发现。这里注意,GetObject()函数不能用于获得由Visual Basic创建的类的引用。

一些应用允许你访问对象库的特别部分。这时要在文件名之后使用一个感叹号(!),紧接下来的字符串是识别你想激活的库的一些部分。为了得到怎样创建这个字符串的信息,你可以参见Automation服务器的技术文档。比如,在画图引用程序中的文件可能拥有几个图层。你可以使用以下的代码来在一个图片中(比如 SCHEMA.CAD)激活一个图层:

var objVar = GetObject("C:\\CAD\\SCHEMA.CAD!Layer2");

一些文件(其它的库)可能支持更多的类。比如,一个画图文件可能支持三种不同的类:应用程序对象、画图对象以及工具条对象。既然你只可以引用单一的对象,所以你必须指定你指的是哪个类:

var objVar = GetObject("C:\\DRAWINGS\\SAMPLE.DRW", "Figment.Drawing");

在前面的例子种,Figment是一个画图应用程序的名字,而Drawing是其中一个它支持的对象类型。