Interface IDispatch et accessibilité

L’interface IDispatch a été initialement conçue pour prendre en charge Automation. Il fournit un mécanisme de liaison tardive pour accéder et récupérer des informations sur les méthodes et propriétés d’un objet. Auparavant, les développeurs de serveurs devaient implémenter les interfaces IDispatch et IAccessible pour leurs objets accessibles ; autrement dit, ils devaient fournir une double interface. Avec Microsoft Active Accessibility 2.0, les serveurs peuvent retourner des E_NOTIMPL à partir des méthodes IDispatch et Microsoft Active Accessibility implémente l’interface IAccessible pour eux.

Outre les méthodes héritées d’IUnknown, les développeurs serveur doivent implémenter les méthodes suivantes dans la définition de classe de chaque objet exposé :

  • GetTypeInfoCount retourne le nombre de descriptions de type pour l’objet. Pour les objets qui prennent en charge IDispatch, le nombre d’informations de type est toujours un.
  • GetTypeInfo récupère une description de l’interface programmable de l’objet.
  • GetIDsOfNames mappe le nom d’une méthode ou d’une propriété à un DISPID, qui est ensuite utilisé pour appeler la méthode ou la propriété.
  • Invoke appelle l’une des méthodes de l’objet, ou obtient ou définit l’une de ses propriétés.