COM - Component Object Model
Objets COM
Microsoft COM (Component Object Model) est un standard permettant de définir des API objet, c'est-à-dire permettant à des applications de communiquer par l'intermédiaire d'objets possédant un certain nombre de méthodes et de propriétés publiques. Les objets ActiveX sont un type particulier d'objets COM.
COM fournit des mécanismes permettant des liens entre applications, parmi lesquels :
- liaisons dynamiques entre applications appelés OLE (Object Link and Embedding, traduisez Liaison et incorporation d'objets), permettant par exemple de lier un fichier tableur dans un document,
- mécanismes d'automates (en anglais automation) permettant de prendre contrôle d'une application à distance.
- mécanismes d'échanges de messages dynamiques entre applications, appelés DDE (Dynamic Data Exchange).
Un grand nombre d'applications possèdent une interface COM, permettant d'invoquer leur fonctionnalités via un programme informatique :
- Microsoft Word
- Microsoft Access
- Microsoft Excel
- Microsoft Internet Explorer
- Microsoft Outlook
- etc.
Accéder à des objets COM
Grâce aux objects COM, il est possible d'étendre à l'infini les possibilités de VBScript en créant des instances d'objets créés par des tiers et fournissant un certain nombre de services.
VBScript définit deux méthodes permettant d'instancier un objet COM :
- CreateObject permet de créer une nouvelle instance d'un programme possédant
une interface COM et l'exécuter si le programme n'est pas déjà ouvert. Par exemple,
pour ouvrir le programme Excel :
Set tableur = CreateObject("Excel.Application")
- GetObject permet d'invoquer un programme dont une instance est déjà ouverte
ou à partir d'un fichier créé avec cette application. Par exemple :
Set monDocument = GetObject("c:\rapport.doc")