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.
IAccessible proxy zapewniają domyślne informacje o ułatwieniach dostępu dla standardowych elementów interfejsu użytkownika: kontrolki UŻYTKOWNIKA, menu UŻYTKOWNIKA i typowe kontrolki z comCTL i COMCTL32. Ta domyślna obsługa jest dostępna za pośrednictwem obiektów IAccessible utworzonych przez Oleacc.dll i zapewnia obsługę ułatwień dostępu w usłudze Microsoft Active Bez dodatkowej pracy programistycznej serwera. Serwer może następnie użyć interfejsu API adnotacji dynamicznej , aby zmodyfikować większość informacji udostępnianych przez Oleacc.dll, ale nie ma pełnej kontroli.
Tworzenie serwera proxy
Aby określić, czy element interfejsu użytkownika natywnie obsługuje interfejs IAccessible, Oleacc.dll wysyła do niego komunikat WM_GETOBJECT. Wartość niezerowa oznacza, że element natywnie obsługuje dostępność Active Accessibility firmy Microsoft i zapewnia własną obsługę IAccessible. Jeśli jednak zwracana wartość jest równa zero, Oleacc.dll udostępnia obiekt proxy dla elementu interfejsu użytkownika i próbuje zwrócić istotne informacje w jego imieniu. Aby uzyskać więcej informacji na temat WM_GETOBJECT, zobacz How WM_GETOBJECT Works.
Jakie informacje są udostępniane
Oleacc.dll używa nazwy klasy systemu Windows elementu interfejsu użytkownika do określenia, jakie informacje powinny być uwidocznione dla każdego z jego właściwości IAccessible i sposobu zbierania tych informacji. Na przykład Oleacc.dll wywołuje funkcję GetWindowText w celu pobrania właściwości Name dla standardowego przycisku push, ale wywołuje tę samą funkcję, aby pobrać właściwość Value dla standardowej kontrolki edycji. W efekcie Oleacc.dll mapuje każdą metodę IAccessible na odpowiednią metodę platformy Microsoft Win32 lub komunikat lub wywołanie funkcji specyficzne dla sterowania. Korzystając z tej specjalnej wielkości liter opartej na nazwie klasy, może zwracać istotne informacje za pośrednictwem IAccessible serwerów proxy bez żadnej obsługi ułatwień dostępu w usłudze Microsoft Active Accessibility na serwerze.
Aplikacje utworzone przy użyciu standardowych elementów interfejsu użytkownika zwykle uzyskują pełną obsługę ułatwień dostępu Active Firmy Microsoft bez dodatkowej pracy programistycznej. Wyjątki od tej reguły to kontrolki, które zostały sklasyfikowane jako podklasy, które nie przechowują własnych ciągów (brak stylu HASSTRINGS) lub które są rysowane przez właściciela. W takich przypadkach Oleacc.dll nie może zebrać potrzebnych informacji, ponieważ informacje są przechowywane poza kontrolą. Jednak w wielu z tych scenariuszy ustanowione obejścia lub użycie adnotacji dynamicznej umożliwiają serwerowi współpracę z serwerami proxy udostępnianymi przez Oleacc.dll.
Ogólne obiekty serwera proxy
Jeśli Oleacc.dll nie rozpoznaje nazwy klasy elementu interfejsu użytkownika, tworzy ogólny serwer proxy, który uwidacznia jak najwięcej informacji. Dotyczy to co najwyżej prostokąta ograniczenia obiektu, obiektu nadrzędnego, nazwy (z WM_GETTEXT) i wszystkich elementów podrzędnych w hierarchii okien.