ClfsCreateScanContext 関数 (wdm.h)

ClfsCreateScanContext ルーチンは、指定された CLFS ログのコンテナーを反復処理するために使用できるスキャン コンテキストを作成します。

構文

CLFSUSER_API NTSTATUS ClfsCreateScanContext(
  [in]      PLOG_FILE_OBJECT   plfoLog,
  [in]      ULONG              cFromContainer,
  [in]      ULONG              cContainers,
  [in]      CLFS_SCAN_MODE     eScanMode,
  [in, out] PCLFS_SCAN_CONTEXT pcxScan
);

パラメーター

[in] plfoLog

CLFS ストリームを表す LOG_FILE_OBJECT 構造体へのポインター。 そのストリームの基になるストレージを提供するログのスキャン コンテキストが作成されます。 呼び出し元は、以前に ClfsCreateLogFile を呼び出してこのポインターを取得しました。

[in] cFromContainer

スキャンされる最初のコンテナーのインデックス。 コンテナーのインデックスは 0 から始まります。

[in] cContainers

ClfsScanLogContainers の各呼び出しでスキャンされるコンテナーの数。

[in] eScanMode

スキャン コンテキストを前方または後方のスキャン用に設定するかどうか、およびスキャン コンテキストを再初期化するかどうかを指定するフラグのセット。 このルーチンの呼び出し元には、次の 3 つのフラグを使用できます。

意味
CLFS_SCAN_FORWARD 前方方向にスキャンするためのスキャン コンテキストを設定します。 たとえば、コンテナー 5 が最後にスキャンされたコンテナーで 、cContainers が 2 の場合、前方スキャンではコンテナー 6 と 7 の記述子が返されます。
CLFS_SCAN_BACKWARD 後方方向にスキャンするためのスキャン コンテキストを設定します。 たとえば、コンテナー 5 が最後にスキャンされたコンテナーで 、cContainers が 2 の場合、後方スキャンではコンテナー 4 と 3 の記述子が返されます。
CLFS_SCAN_INIT スキャン コンテキストを再初期化します。 次回 ClfsScanLogContainers が呼び出されると、スキャン コンテキストの作成後に初めて呼び出されたかのように動作します。
 

pcxScan が、このルーチンに初めて渡されるCLFS_SCAN_CONTEXT構造体を指している場合は、方向フラグ (CLFS_SCAN_FORWARDまたはCLFS_SCAN_BACKWARD) の 1 つを設定する必要があります。 CLFS_SCAN_INIT フラグは設定しないでください。

pcxScan が、以前にこのルーチンに渡されたCLFS_SCAN_CONTEXT構造体を指している場合は、CLFS_SCAN_INIT フラグを設定する必要があります。 また、方向フラグ (CLFS_SCAN_FORWARD または CLFS_SCAN_BACKWARD) の 1 つだけを設定する必要があります。

[in, out] pcxScan

このルーチンによってメンバーが初期化される呼び出し元によって割り当てられた CLFS_SCAN_CONTEXT 構造体へのポインター。 この構造体は、後で ClfsScanLogContainers に渡されます。

戻り値

ClfsCreateScanContext は 、成功した場合STATUS_SUCCESSを返します。それ以外の場合は、Ntstatus.h のエラー コードのいずれかを返します。

注釈

CLFS の概念と用語の説明については、「 共通ログ ファイル システム」を参照してください。

要件

要件
サポートされている最小のクライアント Windows Server 2003 R2、Windows Vista、およびそれ以降のバージョンの Windows で使用できます。
対象プラットフォーム デスクトップ
Header wdm.h (Wdm.h を含む)
Library Clfs.lib
[DLL] Clfs.sys
IRQL <= APC_LEVEL

こちらもご覧ください

ClfsScanLogContainers