PrjWritePlaceholderInfo 関数 (projectedfslib.h)
ファイルまたはディレクトリのメタデータを ProjFS に送信します。
構文
HRESULT PrjWritePlaceholderInfo(
[in] PRJ_NAMESPACE_VIRTUALIZATION_CONTEXT namespaceVirtualizationContext,
[in] PCWSTR destinationFileName,
[in] const PRJ_PLACEHOLDER_INFO *placeholderInfo,
[in] UINT32 placeholderInfoSize
);
パラメーター
[in] namespaceVirtualizationContext
仮想化インスタンスの不透明なハンドル。 これは、 PRJ_GET_PLACEHOLDER_INFO_CB コールバックでプロバイダーに渡される callbackData の VirtualizationInstanceHandle メンバーの値である必要があります。
[in] destinationFileName
プレースホルダーを作成するファイルまたはディレクトリへの仮想化ルートに対する相対パスを指定する null で終わる Unicode 文字列。
これは、 PRJ_GET_PLACEHOLDER_INFO_CB コールバックでプロバイダーに渡される callbackData パラメーターの FilePathName メンバーと一致している必要があります。 プロバイダーは、PrjFileNameCompare 関数を使用して、2 つの名前が一致するかどうかを判断する必要があります。
たとえば、 PRJ_GET_PLACEHOLDER_INFO_CB コールバックで callbackData-FilePathName> に "dir1\dir1\FILE.TXT" が指定され、プロバイダーのバッキング ストアに dir1\dir2 ディレクトリに "File.txt" というファイルが含まれており、名前 "FILE.TXT" と "File.txt" を比較すると PrjFileNameCompare が 0 を返す場合、プロバイダーはこのパラメーターの値として "dir1\dir2\File.txt" を指定します。
[in] placeholderInfo
ファイルまたはディレクトリのメタデータへのポインター。
[in] placeholderInfoSize
placeholderInfo が指すバッファーのサイズ (バイト単位)。
戻り値
この関数が成功すると、 S_OKが返されます。 そうでない場合は、HRESULT エラー コードを返します。
注釈
プロバイダーは、このルーチンを使用して、 PRJ_GET_PLACEHOLDER_INFO_CB コールバックの呼び出しで要求されたデータを提供するか、プレースホルダーを事前に配置するために使用できます。
PRJ_PLACEHOLDER_INFOの EaInformation、SecurityInformation、StreamsInformation の各メンバーは省略可能です。 プロバイダーが拡張属性、カスタム セキュリティ記述子、または代替データ ストリームを提供しない場合は、これらのフィールドを 0 に設定する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 Version 1809 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | projectedfslib.h |