Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Mechanizm WinEvents umożliwia serwerom łatwe komunikowanie się z klientami microsoft Active Accessibility. Klienci często zbierają informacje, reagując na rozwiązania WinEvents (na przykład poniżej fokusu), ale w dowolnym momencie mogą żądać informacji z serwera.
Aby zażądać informacji o dostępnym obiekcie, który generuje winEvent, klient musi przetworzyć zdarzenie i ustanowić połączenie z odpowiednim dostępnym obiektem. W tym celu klient wykonuje następujące sześć kroków:
- Serwer wywołuje NotifyWinEvent w celu wygenerowania powiadomienia WinEvent dla każdej zmiany elementów interfejsu użytkownika.
- Kod zarządzania WinEvent w użytkowniku określa, czy jakiekolwiek aplikacje klienckie zarejestrowały funkcję zaczepienia winEvent przy użyciu SetWinEventHook i wywołuje zarejestrowaną funkcję wywołania zwrotnego.
- W funkcji wywołania zwrotnego klient żąda dostępu do obiektu, który wygenerował zdarzenie, wywołując AccessibleObjectFromEvent lub inne dostępne funkcje pobierania obiektów. Aby uzyskać więcej informacji, zobacz Pobieranie obiektu IAccessible.
- Ten interfejs API ułatwień dostępu usługi Microsoft Active wysyła aplikacji serwera komunikat WM_GETOBJECT w celu pobrania dostępnego obiektu.
- W odpowiedzi na WM_GETOBJECTaplikacja serwera zwraca zero lub zwraca wartość, która działa jako jednorazowe odwołanie do obiektu, który wygenerował zdarzenie.
- Jeśli serwer zwróci zero, usługa Microsoft Active Accessibility tworzy obiekt serwera proxy i podaje jego adres klientowi. W przeciwnym razie usługa Microsoft Active Accessibility używa tego odwołania do pobierania adresu interfejsu obiektu, takiego jak IAccessible lub IDispatch, i podaje ten adres klientowi.
Gdy klient ma adres interfejsu, może wywołać IAccessible właściwości i metody dostępnego obiektu w celu pobrania informacji.
W tej sekcji
- WinEvents i aktywne ułatwień dostępu
- jak działa WM_GETOBJECT
- pobieranie obiektu IAccessible