次の方法で共有


CoInvalidateRemoteMachineBindings 関数 (combaseapi.h)

指定したコンピューターのキャッシュされた RPC バインド ハンドルをフラッシュするように サービス コントロール マネージャー に指示します。

この関数を呼び出できるのは管理者だけです。

構文

HRESULT CoInvalidateRemoteMachineBindings(
  [in] LPOLESTR pszMachineName
);

パラメーター

[in] pszMachineName

バインド ハンドルをフラッシュするコンピューター名、またはキャッシュ内のすべてのハンドルをフラッシュする必要があることを示す空の文字列。

戻り値

この関数は、次の値を返すことができます。

リターン コード 説明
S_OK
成功を示します。
CO_S_MACHINENAMENOTFOUND
指定したコンピューター名が見つからなかったか、バインド ハンドル キャッシュが空であることを示します。これは、特定のコンピューター名ではなく空の文字列が渡されたことを示します。
E_ACCESSDENIED
呼び出し元がこのコンピューターの管理者ではないことを示します。
E_INVALIDARG
pszMachineNameNULL 値が渡されたことを示します。

注釈

OLE サービス コントロール マネージャーは、コンポーネントのアクティブ化要求を他のマシンに送信するために COM によって使用されます。 これを行うために、OLE サービス コントロール マネージャーは RPC バインド ハンドルのキャッシュを保持して、コンピューター名でキー付けされたアクティブ化要求をコンピューターに送信します。 通常の状況では、これは適切に機能しますが、Web ファームや負荷分散の状況など、一部のシナリオでは、同じ名前で別の物理サーバーへの再バインドを容易にするために、特定のハンドルのこのキャッシュを消去する機能が必要になる場合があります。 この目的には、CoInvalidateRemoteMachineBindings が使用されます。

OLE サービス コントロール マネージャーは、未使用のバインド ハンドルを時間の経過と同時にフラッシュします。 これを行うために CoInvalidateRemoteMachineBindings を 呼び出す必要はありません。

要件

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