Comment les serveurs implémentent des ID enfants

Les développeurs de serveurs peuvent assigner des ID enfants à des éléments simples et à des objets accessibles. Toutefois, l’approche recommandée consiste à prendre en charge l’interface COM (Component Object Model) standard IEnumVARIANT dans chaque objet accessible qui a des enfants.

Si vous implémentez IEnumVARIANT, vous devez :

  • Énumérer tous les enfants, à la fois les éléments simples et les objets accessibles. Fournissez des ID enfants pour tous les éléments simples et fournissez le IDispatch à chaque objet accessible.
  • Pour les objets accessibles, définissez le membre VT du Variant sur VT _ Dispatch. Le membre pdispVal doit contenir un pointeur vers l’interface IDispatch . Notez que le Variant est alloué et libéré par le client.
  • Pour les éléments simples, l’ID enfant est un entier positif de 32 bits. Notez que les entiers nuls et négatifs sont réservés par Microsoft Active Accessibility. Définissez le membre VT de la structure Variant sur VT _ I4 et le membre lVal sur l’ID enfant.

Si vous ne prenez pas en charge IEnumVARIANT, vous devez assigner des ID enfants et numéroter les enfants de chaque objet de manière séquentielle à partir de 1.

Il est recommandé que les clients utilisent la fonction Microsoft Active Accessibility Function AccessibleChildren au lieu d’appeler directement l’interface Server IEnumVARIANT .