プロキシ オブジェクトとは
プロキシ オブジェクトは、クライアントとアクセス可能なオブジェクトの間の仲介役として機能します。 プロキシ オブジェクトの目的は、アクセス可能なオブジェクトの有効期間を監視し、破棄されていない場合にのみ、アクセス可能なオブジェクトへの呼び出しを転送することです。
クライアントが IAccessible プロパティを呼び出してオブジェクトに関する情報を取得する場合、プロキシ オブジェクトは、アクセス可能なオブジェクトがまだ使用可能かどうかをチェックする必要があります。 その場合、プロキシ オブジェクトはクライアントの要求をアクセス可能なオブジェクトに渡します。 アクセス可能なオブジェクトが破棄された場合 (たとえば、カスタム コントロールを含むダイアログ ボックスが閉じられた場合)、プロキシ オブジェクトはエラーを返します。 オブジェクトが破棄されたことを示すには、サーバーが CoDisconnectObject を呼び出した後にコンポーネント オブジェクト モデル (COM) によってこのエラーが返されるため、サーバーはエラー コード CO_E_OBJNOTCONNECTEDを返すようにお勧めします。
プロキシ オブジェクトはクライアントに対して透過的です。 クライアントが AccessibleObjectFromEvent、 AccessibleObjectFromPoint、または AccessibleObjectFromWindow を呼び出すと、 IAccessible インターフェイスへのポインターを受け取ります。 ただし、クライアントがこのポインターを使用して IAccessible プロパティまたはメソッドのいずれかを呼び出すと、実行されるコードはプロキシ オブジェクト内にあります。