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 で使用できます。 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | wdm.h (Wdm.h を含む) |
ライブラリ | Clfs.lib |
DLL | Clfs.sys |
IRQL | <= APC_LEVEL |
関連項目
ClfsScanLogContainers の