次の方法で共有


PCLFS_CLIENT_ADVANCE_TAIL_CALLBACK コールバック関数 (wdm.h)

ClfsAdvanceTailCallback 関数は、クライアントのログの基本ログ シーケンス番号 (LSN) を進めます。

構文

PCLFS_CLIENT_ADVANCE_TAIL_CALLBACK PclfsClientAdvanceTailCallback;

NTSTATUS PclfsClientAdvanceTailCallback(
  [in] PLOG_FILE_OBJECT LogFile,
  [in] PCLFS_LSN TargetLsn,
  [in] PVOID ClientData
)
{...}

パラメーター

[in] LogFile

末尾を拡張する必要がある CLFS ログ ストリームを表す LOG_FILE_OBJECT 構造体へのポインター。

[in] TargetLsn

クライアントが末尾を先に進める必要がある LSN を含む CLFS_LSN 構造体へのポインター。

[in] ClientData

クライアントが提供する情報へのポインター。 このデータは、CLFS_MGMT_CLIENT_REGISTRATION 構造体の AdvanceTailCallbackData メンバーで指定します。

戻り値

ClfsAdvanceTailCallback 関数は、STATUS_PENDINGまたはエラー状態を返す必要があります。 戻り値STATUS_PENDINGは、クライアントのログ 末尾を移動する要求が非同期的に完了することを示します。 ClfsMgmtAdvanceTailCallback 関数は、同期的に完了した場合でも、STATUS_SUCCESSを返してはなりません。

備考

ClfsAdvanceTailCallback 関数は、CLFS 管理がクライアントのログ 末尾を進める要求を行うときに呼び出されます。

ClfsAdvanceTailCallback 関数は、戻る前に最小限の処理のみを実行する必要があります。 たとえば、ClfsAdvanceTailCallback 関数は、次の手順に従う場合があります。

  1. 要求を処理できない場合は、エラー状態を返します。
  2. 要求を処理できる場合は、作業項目を作成してキューに入れ、クライアントの末尾を移動するために必要なアクションを実行してから、STATUS_PENDING返します。 ワーカー スレッドのキューの詳細については、「システム ワーカー スレッドの 」を参照してください。
クライアントが CLFS 管理に登録するために ClfsMgmtRegisterManagedClient ルーチンを呼び出すと、クライアントは、ClfsAdvanceTailCallback 関数へのポインターと、この関数が呼び出されたときに ClfsAdvanceTailCallback 関数にパラメーターとして渡されるカスタム データの両方を提供します。

必要条件

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

関連項目

CLFS_MGMT_CLIENT_REGISTRATION

ClfsAdvanceLogBase

ClfsMgmtRegisterManagedClient

ClfsMgmtTailAdvanceFailure