Microsoft(R) Visual Basic(R) Scripting Edition GetObject 函数 | 语言参考 起始页 | 版本 2

请参阅

##### 描述

> 返回对文件中 Automation 对象的引用。

##### 语法

> GetObject([pathname] [, class])

> GetObject 函数的语法有以下参数：

> 参数 | 描述
> pathname | 可选。字符串，包含待检索对象的文件的完整路径和名称。如果省略 pathname 则必须有 class。
> class | 可选。字符串，对象的类。

> class 参数的语法格式为 appname.objectype，其中包括以下部分：

> 部分 | 描述
> appname | 必选。字符串，提供对象的应用程序名称。
> objectype | 必选。字符串，要创建的对象的类型或类。

##### 说明

> 使用 GetObject 函数可以访问文件中的 Automation 对象，而且可以将该对象赋值给对象变量。使用 Set 语句将 GetObject 返回的对象赋值给对象变量。例如：

> >     Dim CADObject
> >     Set CADObject = GetObject("C:\CAD\SCHEMA.CAD")

> 在执行上述代码时，就会启动与指定路径名相关联的应用程序，同时激活指定文件中的对象。如果 pathname 是零长度字符串 ("")，GetObject 返回指定类型的新对象实例。如果省略 pathname 参数，GetObject 将返回指定类型的当前活动对象。如果没有指定类型的对象，就会出现错误。

> 某些应用程序允许只激活文件的一部分，方法是在文件名后加上一个惊叹号 (!) 以及用于标识要激活的文件部分的字符串。有关创建这种字符串的详细信息，请参阅创建对象的应用程序的有关文档。

> 例如，在绘图应用程序中，一个存放在文件中的图可能有多层。可以使用下述代码来激活图 SCHEMA.CAD 中的某一层：

> >     Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")

> 如果没有指定对象的类，则 Automation 会根据所提供的文件名，确定要启动的应用程序以及要激活的对象。但是，有些文件可能支持多个对象类。例如，图可能支持三种不同类型的对象：Application 对象、Drawing 对象和 Toolbar 对象，所有这些都是同一个文件中的一部分。使用可选的 class 参数可以指定文件中要激活的对象。例如：

> >     Dim MyObject
> >     Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", "FIGMENT.DRAWING")

> 在上述样例中，FIGMENT 是绘图应用程序的名称，而 DRAWING 则是它支持的一种对象类型。对象被激活之后，就可以在代码中使用所定义的对象变量来引用它。在前面的例子中，可以使用对象变量 MyObject 访问新对象的属性和方法。例如：

> >     MyObject.Line 9, 90
> >     MyObject.InsertText 9, 100, "嗨，你好！"
> >     MyObject.SaveAs "C:\DRAWINGS\SAMPLE.DRW"

> 注意 在对象的当前实例存在，或者要用已加载的文件创建对象时，请使用 GetObject 函数。如果没有当前实例，并且不准备使用已加载的文件启动对象，请使用 CreateObject 函数。 如果对象已注册为单个实例的对象，则无论执行多少次 CreateObject，都只能创建该对象的一个实例。若使用单个实例对象，当使用零长度字符串 ("") 语法调用时，GetObject 总是返回同一个实例，而如果省略 pathname 参数，则会出现错误。

(C) 1998 Microsoft Corporation. All rights reserved. Terms of Use.