プロキシ オブジェクトが必要な理由
アクセス可能なオブジェクトでは、クライアントが コンテキスト内フック関数を設定すると、クライアントのフック関数が実装されている DLL がサーバーのアドレス空間に読み込まれます。 この場合、クライアントがフック関数内から AccessibleObjectFromEvent を呼び出すと、返されるインターフェイス ポインターは、サーバーのアドレス空間内のコードを直接指します。 クライアントがこのポインターを使用してインターフェイス プロパティを呼び出すと、コンポーネント オブジェクト モデル (COM) ライブラリはマーシャリングやマーシャリング解除に関係せず、オブジェクトが破棄されたかどうかを検出できません。 そのため、サーバーはこの状況を検出し、エラー コードをクライアントに返す必要があります。