欢迎光临

木子屋

标题: JavaScript的GetObject函数

作者: dnawo

日期: 2008-08-12 11:00 AM

分类: 脚本语言

内容: 作用
从文件中返回对 Automation 对象 的一个引用。
语法
GetObject([pathname] [, class])
参数
pathname
可选项。 完整的文件路径和名称，文件中包含了要检索的对象。 如果忽略了 pathname ，那么需要 class 。
class
可选项。 对象的类。类参数采用的语法是 appname.objectype ，包括了以下部分：
appname
必选项。 提供对象的应用程序名称。
objectype
必选项。 要创建的对象的类的类型。
说明
使用 GetObject 函数可以从文件中访问一个 Automation 对象。 可以将由 GetObject 返回的对象赋值给对象变量。 例如：
复制内容到剪贴板 程序代码var CADObject;
CADObject = GetObject("C:\\CAD\\SCHEMA.CAD");
在执行这段代码时，将启动与指定的 pathname 相关的应用程序，所指定文件中的对象将被激活。 如果 pathname 是长度为零的字符串 ("") ，那么 GetObject 将返回指定类型的一个新实例。 如果忽略了 pathname 参数，那么 GetObject 将返回指定类型的当前活动实例。 如果不存在指定类型的对象，那么将出错。
一些应用程序允许激活文件的一部分。要实现此功能，可以在文件名的尾部添加一个感叹号 (!) ，然后在感叹号后跟上一个字符串来指定要激活的文件部分。关于如何创建这个字符串的详细信息，请参阅创建该对象的应用程序的文档。
例如，在一个绘画应用程序中，可能在文件中存储了绘画的很多层次。 可以使用下面的代码激活名为 SCHEMA.CAD 的图画中的一层。
复制内容到剪贴板 程序代码var LayerObject = GetObject("C:\\CAD\\SCHEMA.CAD!Layer3");
如果没有指定对象的类， Automation 将根据所提供的文件名来决定要启动的应用程序和要激活的对象。 但是，一些文件可能支持不止一种对象的类。 例如，一个图画可能支持三种不同的对象类型：应用程序对象、绘画对象，以及工具栏对象，所有这些都是同一个文件中的部分。 要指定文件中希望激活的对象，可以使用可选的 class 参数。 例如：
复制内容到剪贴板 程序代码var MyObject;
MyObject = GetObject("C:\\DRAWINGS\\SAMPLE.DRW", "FIGMENT.DRAWING");
在前面的例子中，FIGMENT 是绘画应用程序的名称，而 DRAWING 是它支持的一种对象类型。 对象被激活后，可以使用定义的对象变量来引用它。 在前面的例子中，可以通过对象变量 MyObject 来访问新对象的属性和方法。 例如：
复制内容到剪贴板 程序代码MyObject.Line(9, 90);
MyObject.InsertText(9, 100, "Hello, world.");
MyObject.SaveAs("C:\\DRAWINGS\\SAMPLE.DRW");
注意 如果当前已经有了对象的实例，或者想要由已经加载了的文件创建对象，那么可以使用 GetObject 函数。 如果没有当前的实例，而且也不想由已经加载的文件来启动对象，那么可以使用 ActiveXObject 对象。
如果对象自身已经注册为单实例对象了，那么无论执行多少次 ActiveXObject 也只会创建对象的一个实例。 对于单实例对象， GetObject 在用长度为零的字符串 ("") 语法调用时总是返回相同的实例，而如果忽略了 pathname 参数就会出错。

+ 查看当前日志评论 (0)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.706 ms

返回

标题: JavaScript的GetObject函数

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.706 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 1.769 ms

返回