RpcServerUnregisterIf 関数 (rpcdce.h)

RpcServerUnregisterIf 関数は、RPC ランタイム ライブラリ レジストリからインターフェイスを削除します。

構文

RPC_STATUS RpcServerUnregisterIf(
  RPC_IF_HANDLE IfSpec,
  UUID          *MgrTypeUuid,
  unsigned int  WaitForCallsToComplete
);

パラメーター

IfSpec

レジストリから削除するインターフェイス。

MgrTypeUuid パラメーターで指定された型 UUID 値で以前に登録されたすべてのインターフェイスを削除するには、null 値を指定します。

MgrTypeUuid

レジストリから削除するマネージャー エントリ ポイント ベクター (EPV) の型 UUID へのポインター。 MgrTypeUuid の値は、RpcServerRegisterIf 関数、RpcServerRegisterIf2 関数、または RpcServerRegisterIfEx 関数の呼び出しで指定されたものと同じ値にする必要があります。

レジストリから以前に登録されたすべての型 UUID の IfSpec パラメーターで指定されたインターフェイスを削除するには、null 値を指定します。

レジストリから MIDL によって生成された既定のマネージャー EPV を削除するには、nil UUID を指定します。 この場合、nil 以外の種類の UUID で登録されているすべてのマネージャー EPV が登録されたままになります。

WaitForCallsToComplete

インターフェイスをレジストリからすぐに削除するか、現在のすべての呼び出しが完了するまで待機するかを示すフラグ。

実行中の呼び出しを無視し、レジストリからインターフェイスを直ちに削除するには、値 0 を指定します。 アクティブなすべての呼び出しが完了するまで待機するには、0 以外の値を指定します。

戻り値

意味
RPC_S_OK
呼び出しは成功しました。
RPC_S_UNKNOWN_MGR_TYPE
マネージャーの種類が不明です。
RPC_S_UNKNOWN_IF
インターフェイスが不明です。
 
メモ 有効なエラー コードの一覧については、「 RPC 戻り値」を参照してください。
 

注釈

サーバーは RpcServerUnregisterIf を呼び出して、インターフェイスとマネージャー EPV の間の関連付けを削除します。 MgrTypeUuid パラメーターで削除するマネージャー EPV を指定するには、RpcServerRegisterIf の呼び出しで指定された UUID 型の値を指定します。 レジストリから削除されると、クライアント アプリケーションでインターフェイスを使用できなくなります。

インターフェイスがレジストリから削除されると、RPC ランタイム ライブラリはそのインターフェイスの新しい呼び出しの受け入れを停止します。 インターフェイスで現在実行中の呼び出しは、コールバックを含めて完了できます。

次の表は、 RpcServerUnregisterIf の動作をまとめたものです。

IfSpec MgrTypeUuid 動作
Null 以外 Null 以外 指定したパラメーターに関連付けられているマネージャー EPV をレジストリから削除します。
Null 以外 NULL IfSpec パラメーターに関連付けられているすべてのマネージャー EPV を削除します。
NULL Null 以外 MgrTypeUuid パラメーターに関連付けられているすべてのマネージャー EPV を削除します。
NULL NULL すべてのマネージャー EPV を削除します。 この呼び出しは、すべてのインターフェイスのすべてのマネージャー EPV が登録解除されているため、サーバーが新しいリモート プロシージャ コールを受信できないようにする効果があります。
 
 
メモIfSpec の値が NULL の場合、この関数は自動リッスン インターフェイスを登録したままにします。 自動リッスン インターフェイスは、レジストリから個別に削除する必要があります。 詳細については、「 RpcServerRegisterIfEx 」を参照してください。
 

要件

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

こちらもご覧ください

RPC_MGR_EPV

インターフェイスの登録

RpcServerRegisterIf

RpcServerRegisterIf2

RpcServerRegisterIfEx

RpcServerUnregisterIfEx