Share via


Was sind Proxyobjekte?

Ein Proxyobjekt fungiert als Vermittler zwischen dem Client und einem zugänglichen Objekt. Der Zweck des Proxyobjekts besteht darin, die Lebensdauer des zugänglichen Objekts zu überwachen und Aufrufe an das barrierefreie Objekt nur dann weiterzuleiten, wenn es nicht zerstört wird.

Wenn ein Client eine IAccessible-Eigenschaft aufruft, um Informationen zu einem Objekt abzurufen, muss das Proxyobjekt überprüfen, ob das barrierefreie Objekt noch verfügbar ist. Wenn dies der Fall ist, übergibt das Proxyobjekt die Anforderung des Clients an das barrierefreie Objekt. Wenn das barrierefreie Objekt zerstört wird (z. B. wenn ein Dialogfeld mit benutzerdefinierten Steuerelementen geschlossen wird), gibt das Proxyobjekt einen Fehler zurück. Um anzugeben, dass das Objekt zerstört wurde, wird empfohlen, dass Server den Fehlercode CO_E_OBJNOTCONNECTED zurückgeben, da dieser Fehler vom Component Object Model (COM) zurückgegeben wird, nachdem ein Server CoDisconnectObject aufruft.

Das Proxyobjekt ist für den Client transparent. Wenn der Client AccessibleObjectFromEvent, AccessibleObjectFromPoint oder AccessibleObjectFromWindow aufruft, erhält er einen Zeiger auf eine IAccessible-Schnittstelle zurück. Wenn der Client diesen Zeiger jedoch verwendet, um eine der IAccessible-Eigenschaften oder -Methoden aufzurufen, befindet sich der ausgeführte Code im Proxyobjekt.