次の方法で共有


RxLockEnumerator 関数 (rxprocs.h)

RxLockEnumerator は、FCB のファイル ロックを列挙するために、ネットワーク ミニ リダイレクターから呼び出されます。

構文

BOOLEAN RxLockEnumerator(
  [in, out] IN OUT PMRX_SRV_OPEN SrvOpen,
  [in, out] IN OUT PVOID         *ContinuationHandle,
  [out]     OUT PLARGE_INTEGER   FileOffset,
  [out]     OUT PLARGE_INTEGER   LockRange,
  [out]     OUT PBOOLEAN         IsLockExclusive
);

パラメーター

[in, out] SrvOpen

列挙する FCB 上のSRV_OPEN構造体へのポインター。

[in, out] ContinuationHandle

列挙体の状態を表す前後に渡されるハンドルへのポインター。 このパラメーターが NULL ポインターの場合、これはロック列挙の開始です。

[out] FileOffset

返されたロックのファイル オフセットへのポインター。

[out] LockRange

返されるロックのロック範囲へのポインター。

[out] IsLockExclusive

返されたロックが排他ロックであるかどうかを示す BOOLEAN へのポインター。

戻り値

RxLockEnumerator は、返されたロック データが有効であることを示す TRUE を 返します。 RxLockEnumerator ルーチンは、ロック データが見つからないか、ロックの一覧の末尾に達すると、エラー時に または FALSE を返します。

注釈

RxLockEnumerator は通常、ネットワーク min-redirector から呼び出され、FCB のファイル ロックを列挙します。 RxLockEnumerator は、呼び出しごとに 1 つのロックを取得します。 そのため、呼び出し元は列挙状態を内部的に保持する必要があります。 その結果、いつでも 1 つの列挙プロセスのみが進行中になります。

RxLockEnumerator ルーチンは、ロックを列挙するために、ページ以外のプール メモリを割り当てる必要があります。 その結果、メモリ割り当てが失敗した場合、 RxLockEnumerator が失敗する可能性があります。

要件

要件
対象プラットフォーム デスクトップ
Header rxprocs.h (Rxprocs.h、Mrxfcb.h、Fcb.h を含む)
IRQL <= APC_LEVEL

こちらもご覧ください

FCB 構造体

SRV_OPEN構造体