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 |