GetObject, fonction

Microsoft VBScript

Microsoft® Visual Basic® Scripting Edition GetObject, fonction Référence du langage 
Version 2 


Description
Renvoie une référence à l'objet Automation d'un fichier.
Syntaxe
GetObject([pathname] [, class])

La syntaxe de la fonction GetObject comprend les éléments suivants :

élément Description
pathname Facultatif; chaîne. Chemin complet et nom du fichier contenant l'objet à extraire. Si l'argument pathname est omis, l'argument class est requis.
class Facultatif; chaîne. Classe de l'objet.

L'argument class utilise la syntaxe appname.objectype et comprend les éléments suivants :

élément Description
appname Chaîne. Nom de l'application fournissant l'objet.
objectype Chaîne. Type ou classe de l'objet à créer.

Notes
Utilisez la fonction GetObject pour accéder à un objet ActiveX à partir d'un fichier et affectez l'objet à une variable objet. Utilisez l'instruction Set pour affecter l'objet renvoyé par la fonction GetObject à la variable objet. Par exemple:
Dim CADObject
Set CADObject = GetObject("C:.CAD")
Lorsque ce code est exécuté, l'application associée au nom de chemin spécifié démarre, et l'objet dans le fichier spécifié est activé. Si l'argument pathname est une chaîne de longueur nulle (""), la fonction GetObject renvoie une nouvelle instance d'objet de type spécifié. Si l'argument pathname est omis, la fonction GetObject renvoie un objet actuellement actif du type spécifié. Si aucun objet du type spécifié n'existe, une erreur se produit.

Certaines applications permettent d'activer une partie d'un fichier. Ajoutez un point d'exclamation (!) à la fin du fichier et faites suivre ce dernier d'une chaîne identifiant la partie du fichier à activer. Pour plus d'informations sur la création de cette chaîne, consultez la documentation de l'application ayant créé l'objet.

Par exemple, dans une application de dessin, un fichier pourrait contenir plusieurs couches d'un dessin. Vous pouvez utiliser le code suivant pour activer une couche dans un dessin nommé SCHEMA.CAD:

Set LayerObject = GetObject("C:.CAD!Layer3")
Si vous ne précisez pas la classe de l'objet, l'Automation identifie l'application à démarrer et l'objet à activer, en fonction du nom de fichier que vous fournissez. Cependant, certains fichiers peuvent gérer plusieurs classes d'objets. Par exemple, un dessin peut supporter trois types d'objet: un objet d'application, un objet de dessin et un objet de barre d'outils, chacun faisant partie du même fichier. Pour spécifier l'objet d'un fichier à activer, utilisez l'argument class facultatif. Par exemple:
Dim MyObject
Set MyObject = GetObject("C:.DRW", "FIGMENT.DRAWING")
Dans l'exemple précédent, FIGMENT est le nom d'une application de dessin et DRAWING est l'un des types d'objet qu'il gère. Une fois qu'un objet est activé, vous pouvez y faire référence dans du code en utilisant la variable objet que vous avez définie. Dans l'exemple précédent, vous accédez aux propriétés et aux méthodes du nouvel objet en utilisant la variable objet MyObject. Par exemple :
MyObject.Line 9, 90
MyObject.InsertText 9, 100, "Bonjour."
MyObject.SaveAs "C:.DRW"

Remarque  Utilisez la fonction GetObject lorsqu'il existe une instance courante de l'objet, ou lorsque vous souhaitez créer l'objet avec un fichier déjà chargé. En l'absence d'instance courante, et si vous ne souhaitez pas que l'objet commence avec un fichier chargé, utilisez la fonction CreateObject.

Si un objet s'est enregistré comme un objet d'instance simple, une seule instance de l'objet est créée, quel que soit le nombre d'exécutions de la fonction CreateObject. Avec un objet à simple instance, la fonction GetObject renvoie toujours la même instance lorsqu'il est appelé avec la syntaxe de chaîne de longueur nulle (""), et il provoque une erreur si l'argument pathname est omis.