Überprüfen von IAccessible-Rückgabewerten

Cliententwickler sollten sich nicht auf die COM-Makros (Component Object Model) SUCCEEDED und FAILED verlassen, um IAccessible-Rückgabewerte zu testen, da andere Werte als S_OK als erfolgreich angesehen werden. Beispielsweise kann eine Methode S_FALSE zurückgeben, was vom SUCCEEDED-Makro als erfolgreich angesehen wird, aber dennoch einen NULL-Zeiger in einem Ausgabeparameter erhält.

Cliententwickler müssen sich vor der Möglichkeit schützen, dass einige Server andere Fehlercodes als die dokumentierten Werte zurückgeben. Um sicher zu sein, müssen Sie sicherstellen, dass alle Ausgabeparameter gültige Informationen enthalten und die folgenden Kriterien erfüllen:

  • Alle Zeiger sind ungleich NULL.
  • Der vt-Member einer variant-Struktur ist nicht gleich VT_EMPTY.