次の方法で共有


WM_GETOBJECTのしくみ

Microsoft Active Accessibility は、クライアントが AccessibleObjectFromX 関数のいずれかを呼び出すと、WM_GETOBJECT メッセージを適切なサーバー アプリケーションに送信します。 次の一覧では、発生するさまざまなシナリオについて説明します。

  • WM_GETOBJECT を受け取るウィンドウまたはコントロールが IAccessible実装している場合、ウィンドウは LresultFromObjectを使用して IAccessible インターフェイスへの参照返します。 Microsoft Active Accessibility は、コンポーネント オブジェクト モデル (COM) ライブラリと組み合わせて、適切なマーシャリングを実行し、サーバーからクライアントにインターフェイス ポインターを渡します。
  • メッセージを受信するウィンドウが IAccessible実装していない場合は、0 を返す必要があります。
  • ウィンドウが WM_GETOBJECT メッセージを処理しない場合、DefWindowProc 関数は 0 を返します。

サーバーから 0 が返された場合でも、Microsoft Active Accessibility はオブジェクトに関する情報をクライアントに提供します。 リスト ボックスやボタンなど、システムが提供するほとんどのオブジェクトについて、Microsoft Active Accessibility は完全な情報を提供します。他のオブジェクトの場合、情報は制限されます。 たとえば、Microsoft Active Accessibility では、ウィンドウ ハンドルのないコントロールの情報は提供されません。 Microsoft Active Accessibility は、クライアントがオブジェクトに関する情報を取得するために使用する、プロキシ IAccessible インターフェイス ポインターを返します。

詳細については、「WM_GETOBJECT メッセージ」を参照してください。