RpcEpUnregister 関数 (rpcdce.h)

RpcEpUnregister 関数は、ローカル エンドポイント マップ データベースからサーバー アドレス情報を削除します。

構文

RPC_STATUS RpcEpUnregister(
  RPC_IF_HANDLE      IfSpec,
  RPC_BINDING_VECTOR *BindingVector,
  UUID_VECTOR        *UuidVector
);

パラメーター

IfSpec

ローカル エンドポイント マップ データベースから登録を解除するためのインターフェイス。

BindingVector

登録解除するバインド ハンドルのベクターへのポインター。

UuidVector

登録を解除するオブジェクト UUID の省略可能なベクターへのポインター。 サーバー アプリケーションはこのベクトルを構築します。 RpcEpUnregister は、指定された IfSpec パラメーターと BindingVector パラメーターとオブジェクト UUID に一致するすべてのエンドポイント マップ データベース要素の登録を解除します。

null パラメーター値は、登録解除するオブジェクト UUID がないことを示します。

戻り値

意味
RPC_S_OK
呼び出しは成功しました。
RPC_S_NO_BINDINGS
バインドはありません。
RPC_S_INVALID_BINDING
バインド ハンドルが無効でした。
RPC_S_WRONG_KIND_OF_BINDING
これは、操作の間違った種類のバインドでした。
 
メモ 有効なエラー コードの一覧については、「 RPC 戻り値」を参照してください。
 

注釈

RpcEpUnregister 関数は、ローカル ホストのエンドポイント マップ データベースから要素を削除します。 サーバー アプリケーションがこの関数を呼び出すのは、サーバーが以前にエンドポイントを登録していて、サーバーがそのアドレス情報をエンドポイント マップ データベースから削除したい場合のみです。

具体的には、 RpcEpUnregister を使用すると、サーバー アプリケーションは、インターフェイスの仕様に基づいて、または提供されるリソースのインターフェイス仕様とオブジェクト UUID の両方に基づいて、独自のエンドポイント マップ データベース要素 (サーバー アドレス情報) を削除できます。

サーバーは RpcServerInqBindings 関数を 呼び出して、必要な BindingVector パラメーターを取得します。 選択したエンドポイントの登録を解除するために、サーバーは、この関数を呼び出す前にバインド ベクターを排除できます。

RpcEpUnregister、IfSpecBindingVectorUuidVector パラメーターからクロス積を作成し、エンドポイント マップ データベースからクロス製品の各要素を削除します。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー rpcdce.h (Rpc.h を含む)
Library Rpcrt4.lib
[DLL] Rpcrt4.dll

こちらもご覧ください

RpcEpRegister

RpcEpRegisterNoReplace

RpcNsBindingUnexport

RpcServerInqBindings