IExternalConnection::AddConnection メソッド (objidlbase.h)
オブジェクトの強力な外部接続の数をインクリメントします。
構文
DWORD AddConnection(
[in] DWORD extconn,
[in] DWORD reserved
);
パラメーター
[in] extconn
オブジェクトへの外部接続の種類。 このインターフェイスで現在サポートされている外部接続の唯一の種類は強力です。つまり、この外部接続が存在する限り、オブジェクトは存続する必要があります。 厳密な外部接続は、列挙 EXTCONN で定義EXTCONN_STRONG値によって表されます。
[in] reserved
接続に関する情報。 このパラメーターは、OLE で使用するために予約されています。 その値は 0 にできますが、必ずしもできません。 したがって、 AddConnection の実装には、ゼロ値が返されるかどうかによって実行が決まるコード ブロックを含めないようにする必要があります。
戻り値
メソッドは、接続の数を返します。 この値は、デバッグ目的でのみ使用することを目的としています。
注釈
EXE オブジェクト サーバーによって作成されたオブジェクトは、リンク クライアントがアクティブ化され、オブジェクトに外部ロックが作成されるたびに、スタブ マネージャーを使用して AddConnection を呼び出します。 リンク クライアントが接続を切断すると、スタブ マネージャーは IExternalConnection::ReleaseConnection を呼び出してロックを解除します。
DLL オブジェクト アプリケーションは、オブジェクトと同じプロセス空間に存在するため、RPC (リモート プロシージャ 呼び出し) を使用せず、外部接続を追跡するためのスタブ マネージャーがありません。 そのため、オブジェクトへの外部リンクをサポートする DLL サーバーでは、リンク クライアントがインターフェイスを直接呼び出して接続が追加または解放されたときに通知できるように 、IExternalConnection を実装する必要があります。
AddConnection メソッドの一般的な実装を次に示します。
DWORD MyInterface::AddConnection(DWORD extconn, DWORD dwReserved)
{
return extconn & EXTCONN_STRONG ? ++m_cStrong : 0;
}
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | objidlbase.h (ObjIdl.h を含む) |