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

Javascript
JavaScript实现Sleep函数的代码
一个可以显示阴历的JS代码
从csdn弄下来的页面预先载入效果
键盘事件中keyCode、which和charCode 的兼容性测试
一个支持ff的modaldialog的js代码
[js+css]点击隐藏层,点击另外层不能隐藏原层
用javascript实现页面打印的三种方法
HTML-CSS群中单选引发的“事件”
一款不错的键盘密码输入js程序
限制文本字节数js代码
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
用javascript动态调整iframe高度的方法
用一段js程序来实现动画功能
javascript实现划词标记+划词搜索功能
javascript 简单高效判断数据类型 系列函数 By shawl.qiu
服务端 VBScript 与 JScript 几个相同特性的写法 By shawl.qiu
禁止F5等快捷键的JS代码
在textarea文本域中显示HTML代码的方法
Javascript之文件操作
修改发贴的编辑功能

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 308 ::
收藏到网摘: 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是其中一个它支持的对象类型。