Share via


Warum Proxyobjekte benötigt werden

Wenn bei barrierefreien Objekten ein Client eine Kontext-Hook-Funktion festlegt, wird die DLL, in der die Hookfunktion des Clients implementiert ist, in den Adressraum des Servers geladen. Wenn der Client AccessibleObjectFromEvent aus der Hookfunktion aufruft, zeigt der zurückgegebene Schnittstellenzeiger direkt auf Code im Adressraum des Servers. Wenn der Client eine Schnittstelleneigenschaft mit diesem Zeiger aufruft, ist die COM-Bibliothek (Component Object Model) nicht am Marshallen oder Aufheben derMarshaling beteiligt und kann nicht erkennen, ob ein Objekt zerstört wird. Daher muss der Server diese Situation erkennen und einen Fehlercode an den Client zurückgeben.