次の方法で共有


RtmBlockMethods 関数 (rtmv2.h)

RtmBlockMethods 関数は、指定した宛先、ルート、または次ホップ、またはすべての宛先、ルート、および次ホップに対するメソッドの実行をブロックまたはブロック解除します。

構文

DWORD RtmBlockMethods(
  [in] RTM_ENTITY_HANDLE RtmRegHandle,
  [in] HANDLE            TargetHandle,
  [in] UCHAR             TargetType,
  [in] DWORD             BlockingFlag
);

パラメーター

[in] RtmRegHandle

RtmRegisterEntity の以前の呼び出しから取得したクライアントを処理します。

[in] TargetHandle

メソッドをブロックする宛先、ルート、または次ホップを処理します。 このパラメーターは省略可能であり、 NULL に設定すると、すべてのターゲットのメソッドをブロックできます。

[in] TargetType

TargetHandle のハンドルの種類を指定します。 このパラメーターは省略可能であり、 NULL に設定すると、すべてのターゲットのメソッドをブロックできます。 次のフラグが使用されます。

Type 説明
DEST_TYPE
TargetHandle は宛先です。
NEXTHOP_TYPE
TargetHandle は次ホップです。
ROUTE_TYPE
TargetHandle はルートです。

[in] BlockingFlag

メソッドをブロックするかブロック解除するかを指定します。 次のフラグが使用されます。

定数 説明
RTM_BLOCK_METHODS
指定したターゲットのブロック メソッド。
RTM_RESUME_METHODS
指定したターゲットのメソッドのブロックを解除します。

戻り値

関数が成功した場合、戻り値はNO_ERROR。

関数が失敗した場合、戻り値は次のエラー コードになります。

意味
ERROR_INVALID_HANDLE
ハンドルが正しくありません。
 
 

注釈

現在、この関数では、特定の宛先、ルート、または次ホップのブロックメソッドはサポートされていません。

通常、メソッドは、ルート内のクライアント固有のデータが変更されている場合にブロックされます。クライアントはメソッドをブロックし、データを再配置してから、メソッドのブロックを解除します。

クライアントは、短期間だけメソッドをブロックする必要があります。 2 番目のクライアントが RtmInvokeMethod を呼び出し、最初のクライアントのメソッドがブロックされている場合、 RtmInvokeMethod はメソッドのブロックが解除され、関数呼び出しが完了するまで戻りません。

要件

要件
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー rtmv2.h
Library Rtm.lib
[DLL] Rtm.dll

こちらもご覧ください

RtmGetEntityMethods

RtmInvokeMethod