次の方法で共有


ClfsAddLogContainer 関数 (wdm.h)

ClfsAddLogContainer ルーチンは、CLFS ログにコンテナーを追加します。

構文

CLFSUSER_API NTSTATUS ClfsAddLogContainer(
  [in] PLOG_FILE_OBJECT plfoLog,
  [in] PULONGLONG       pcbContainer,
  [in] PUNICODE_STRING  puszContainerPath
);

パラメーター

[in] plfoLog

コンテナーが追加されるログを表す LOG_FILE_OBJECT 構造体へのポインター。 呼び出し元は、以前に ClfsCreateLogFile 呼び出すことによって、このポインターを取得しました。

[in] pcbContainer

ULONGLONG 型の変数へのポインター。 このパラメーターのロールは、ログに現在少なくとも 1 つのコンテナーがあるかどうかによって異なります。

  • ログに現在コンテナーがない場合、呼び出し元は、新しいコンテナーの要求されたサイズ (バイト単位) である正の整数を提供します。 CLFS は、要求されたサイズを 512 KB (専用ログの場合) または 1 MB (多重化されたログの場合) の倍数に切り上げたコンテナーを作成します。
  • ログに現在少なくとも 1 つのコンテナーがあり、このパラメーターが NULL ポインターである場合、CLFS は既存のコンテナーと同じサイズの新しいコンテナーを作成します。 (ログ内のすべてのコンテナーのサイズは同じである必要があります)。
  • ログに現在少なくとも 1 つのコンテナーがあり、このパラメーターが有効なポインターである場合、呼び出し元は、新しいコンテナーの要求されたサイズ (バイト単位) である正の整数を提供します。 要求されたサイズは、512 KB (専用ログの場合) または 1 MB (多重化されたログの場合) の倍数に切り上げられます。 切り上げられたサイズが少なくとも既存のコンテナー サイズと同じ大きさの場合、CLFS は既存のコンテナーと同じサイズの新しいコンテナーを作成します。 正常に戻った場合、このパラメーターは既存のコンテナー サイズを受け取ります。 切り上げサイズが既存のコンテナー サイズより小さい場合、ClfsAddLogContainer 失敗します。

[in] puszContainerPath

新しいコンテナーのパス名を指定する UNICODE_STRING 構造体へのポインター。 パスは、基本ログ ファイルの場所に対する絶対パスまたは相対パスにすることができます。 基本ログ ファイルに対する相対パスは、文字列リテラル (L"%BLF%\") であるCLFS_CONTAINER_RELATIVE_PREFIXで始まる必要があります。

戻り値

ClfsAddLogContainer 成功した場合、STATUS_SUCCESSが返されます。それ以外の場合は、Ntstatus.h で定義されているエラー コードのいずれかを返します。

備考

コンテナーは、安定ストレージ上の連続したエクステントです。 たとえば、コンテナーはディスク上の連続したファイルである可能性があります。 ログは、ベース ログ ファイルと共にコンテナーのセットです。 コンテナーの詳細については、「CLFS Stable Storage 」を参照してください。

ベース ログ ファイルに対する相対パスで指定されたコンテナーは、ベース ログ ファイルまたはベース ログ ファイルのサブディレクトリと同じディレクトリに存在する必要があります。 ディレクトリ "." と ".." は相対パスでは使用できません。

ログには、絶対パスを持つコンテナーと、相対パスを持つ他のコンテナーを含めることができます。

コンテナーは非圧縮モードで作成され、ゼロで初期化されます。

ログに対して I/O を実行するには、少なくとも 2 つのコンテナーが必要です。

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

必要条件

要件 価値
サポートされる最小クライアント Windows Server 2003 R2、Windows Vista、およびそれ以降のバージョンの Windows で使用できます。
ターゲット プラットフォーム デスクトップ
ヘッダー wdm.h (Wdm.h を含む)
ライブラリ Clfs.lib
DLL Clfs.sys
IRQL <= APC_LEVEL

関連項目

ClfsAddLogContainerSet

ClfsRemoveLogContainer