次の方法で共有


PRJ_START_DIRECTORY_ENUMERATION_CB コールバック関数 (projectedfslib.h)

ディレクトリ列挙が開始されていることをプロバイダーに通知します。

構文

PRJ_START_DIRECTORY_ENUMERATION_CB PrjStartDirectoryEnumerationCb;

HRESULT PrjStartDirectoryEnumerationCb(
  [in] const PRJ_CALLBACK_DATA *callbackData,
  [in] const GUID *enumerationId
)
{...}

パラメーター

[in] callbackData

操作に関する情報。 このコールバックを実装するには、次の callbackData メンバーが必要です。

FilePathName 列挙するディレクトリを識別します。
VersionInfo 列挙するディレクトリのバージョン情報を提供します。

プロバイダーは、コールバックの実行中にのみこのバッファーにアクセスできます。 操作にペンを付け、このバッファーからのデータが必要な場合は、独自のコピーを作成する必要があります。

[in] enumerationId

この列挙セッションの識別子。

戻り値

リターン コード 説明
S_OK
プロバイダーが操作を正常に完了しました。
HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
列挙するディレクトリは、プロバイダーのバッキング ストアに存在しません。
HRESULT_FROM_WIN32(ERROR_IO_PENDING)
プロバイダーは、後で操作を完了することを望みます。
 

プロバイダーが操作に失敗した場合の適切な HRESULT エラー コード。

注釈

ProjFS は、最初にこのコールバックを呼び出し、次に 1 つ以上 のPRJ_GET_DIRECTORY_ENUMERATION_CB コールバック、次に PRJ_END_DIRECTORY_ENUMERATION_CB コールバックを 呼び出すことによって、プロバイダーからディレクトリ列挙を要求します。 複数の列挙が同じ場所で並列に発生する可能性があるため、ProjFS は enumerationId 引数を使用してコールバック呼び出しを 1 つの列挙セッションに関連付けます。つまり、列挙コールバックに対する呼び出しのセットは、同じセッションの enumerationId に同じ値を使用します。

要件

要件
サポートされている最小のクライアント Windows 10 Version 1809 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー projectedfslib.h