ClfsScanLogContainers 関数 (wdm.h)
ClfsScanLogContainers ルーチンは、特定の CLFS ログに属するコンテナーのシーケンスに関する説明情報を取得します。
構文
CLFSUSER_API NTSTATUS ClfsScanLogContainers(
[in, out] PCLFS_SCAN_CONTEXT pcxScan,
[in] CLFS_SCAN_MODE eScanMode
);
パラメーター
[in, out] pcxScan
CLFS_SCAN_CONTEXT構造体へのポインター。 呼び出し元は、以前に 構造体を割り当て、 ClfsCreateScanContext を呼び出して初期化しました。 特に、 pInfoContainer メンバーは CLFS_CONTAINER_INFORMATION 構造体の配列を指すように初期化され、 cContainers メンバーは配列内の要素の数に初期化されました。 返された場合、配列内の構造体は、シーケンス内のコンテナーに関する説明情報を受け取ります。
[in] eScanMode
スキャンの方向と、スキャン コンテキストを閉じる必要があるかどうかを指定するフラグのセット。 このルーチンの呼び出し元は、次のフラグを使用できます。
値 | 意味 |
---|---|
CLFS_SCAN_FORWARD | 順方向にスキャンします。 たとえば、コンテナー 5 が最後にスキャンされたコンテナーで 、pxcScan->cContainers が 2 に等しい場合、このルーチンはコンテナー 6 と 7 の記述子を返します。 |
CLFS_SCAN_BACKWARD | 後方方向にスキャンします。 たとえば、コンテナー 5 が最後にスキャンされたコンテナーで 、pxcScan->cContainers が 2 に等しい場合、このルーチンはコンテナー 4 と 3 の記述子を返します。 |
CLFS_SCAN_CLOSE | pcxScan が指すスキャン コンテキストに関連付けられているすべてのリソースを解放します。 |
CLFS_SCAN_CLOSE フラグが設定されている場合は、CLFS_SCAN_FORWARDフラグとCLFS_SCAN_BACKWARD フラグの両方がクリアされている必要があります。
CLFS_SCAN_CLOSE フラグがクリアされている場合は、方向フラグ (CLFS_SCAN_FORWARD または CLFS_SCAN_BACKWARD) の 1 つだけを設定する必要があります。
戻り値
ClfsScanLogContainers は 、成功した場合STATUS_SUCCESSを返します。それ以外の場合は、Ntstatus.h で定義されているエラー コードのいずれかを返します。
注釈
CLFS は 、CLFS_SCAN_CONTEXT 構造体を使用して、コンテナー スキャンの開始場所 ( cIndex メンバー) と ClfsScanLogContainers の各呼び出しでスキャンされるコンテナーの数を追跡します。 cContainers メンバーの値 N は、ClfsScanLogContainers が呼び出されるたびに、次の N 個のコンテナーがスキャンされることを指定します。
CLFS_SCAN_CONTEXT構造体の cContainersReturned メンバーは、ClfsScanLogContainers の 1 回の呼び出しで実際にスキャンされたコンテナーの数を受け取ります。
ClfsScanLogContainers がSTATUS_NO_MORE_ENTRIESを返すと、スキャンするコンテナーはこれ以上ありません。
pcxScan が指すスキャン コンテキストの使用が完了したら、スキャン コンテキストに関連付けられているリソースを解放するために、eScanMode がCLFS_SCAN_CLOSEと等しい ClfsScanLogContainers を呼び出す必要があります。
CLFS の概念と用語の説明については、「 共通ログ ファイル システム」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Server 2003 R2、Windows Vista、およびそれ以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | Clfs.lib |
[DLL] | Clfs.sys |
IRQL | <= APC_LEVEL |