次の方法で共有


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

プロバイダーにファイルまたはディレクトリの情報を要求します。

構文

PRJ_GET_PLACEHOLDER_INFO_CB PrjGetPlaceholderInfoCb;

HRESULT PrjGetPlaceholderInfoCb(
  [in] const PRJ_CALLBACK_DATA *callbackData
)
{...}

パラメーター

[in] callbackData

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

FilePathName ProjFS が情報を要求しているプロバイダーのストア内のファイルまたはディレクトリへのパスを識別します。

プロバイダーはこれを使用して、名前がバッキング ストアに存在するかどうかを判断します。 この名前をストア内の名前と比較するには、 PrjFileNameMatch 関数を使用する必要があります。 一致する名前が見つかると、その名前が PrjWritePlaceholderInfo 関数の destinationFileName パラメーターとして使用されます。

VersionInfo 要求された項目の親ディレクトリのバージョン情報を提供します。

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

戻り値

リターン コード 説明
S_OK
ファイルはプロバイダーのストアに存在し、ファイルの情報を ProjFS に正常に渡しました。
HRESULT_FROM_WIN32(ERROR_IO_PENDING)
プロバイダーは、後で操作を完了することを望みます。
HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
ファイルがプロバイダーのストアに存在しません。
 

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

注釈

ProjFS は、このコールバックで提供される情報を使用して、要求された項目のプレースホルダーを作成します。

このコールバックを処理するために、プロバイダーは PrjWritePlaceholderInfo を呼び出して、ProjFS に要求されたファイル名の情報を提供します。 次に、プロバイダーがコールバックを完了します。

要件

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