1 つのファイルまたはディレクトリの情報を列挙体に提供し、呼び出し元が拡張情報を指定できるようにします。
構文
HRESULT PrjFillDirEntryBuffer2(
[in] PRJ_DIR_ENTRY_BUFFER_HANDLE dirEntryBufferHandle,
[in] PCWSTR fileName,
[in, optional] PRJ_FILE_BASIC_INFO *fileBasicInfo,
[in, optional] PRJ_EXTENDED_INFO *extendedInfo
);
パラメーター
[in] dirEntryBufferHandle
塗りつぶされたエントリに関する情報を受け取る構造体への不透明なハンドル。
[in] fileName
エントリの名前を含む null で終わる文字列へのポインター
[in, optional] fileBasicInfo
入力するエントリに関する基本情報。
[in, optional] extendedInfo
入力するエントリに関する拡張情報を指定する PRJ_EXTENDED_INFO 構造体へのポインター。
戻り値
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) は、dirEntryBufferHandle に新しいエントリ用の十分な領域がないことを示します。
E_INVALIDARGは、extendedInfo.InfoType が認識されないかどうかを示します。
注釈
プロバイダーは、このルーチンを使用して 、PRJ_GET_DIRECTORY_ENUMERATION_CB コールバックを処理します。 コールバックを処理するときに、プロバイダーは列挙体内の一致するファイルまたはディレクトリごとにこのルーチンを呼び出します。 このルーチンを使用すると、プロバイダーは、ファイルまたはディレクトリに関する拡張情報 (シンボリック リンクかどうかなど) を指定できます。
このルーチンが列挙型にエントリを追加するときに HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) を返す場合、プロバイダーはコールバックからS_OKを返し、次の PRJ_GET_DIRECTORY_ENUMERATION_CB コールバックを待機します。
プロバイダーは、HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) になったときに追加しようとしていたエントリで列挙体の入力を再開します。
このルーチンが、PRJ_GET_DIRECTORY_ENUMERATION_CBコールバックの呼び出し中に追加された最初のエントリの HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER )を返す場合、プロバイダーはコールバックからHRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)を返す必要があります。
シンボリック リンク
このディレクトリ エントリがシンボリック リンク用であることを指定するために、プロバイダーは、1 つの PRJ_EXTENDED_INFO 構造体を使用してバッファーを書式設定し、 extendedInfo パラメーターでポインターを渡します。 プロバイダーは、構造体のフィールドを次のように設定します。
extendedInfo.InfoType = PRJ_EXT_INFO_TYPE_SYMLINKextendedInfo.NextInfoOffset = 0extendedInfo.Symlink.TargetName = <path to the target of the symbolic link>
Requirements
| Requirement | 価値 |
|---|---|
| サポートされる最小クライアント | Windows 10 バージョン 2004 (10.0;ビルド 19041) |
| サポートされている最小のサーバー | Windows Server バージョン 2004 (10.0;ビルド 19041) |
| ターゲット プラットフォーム の | ウィンドウズ |
| Header | projectedfslib.h |
| Library | ProjectedFSLib.lib |