Bagikan melalui


Fungsi PrjFillDirEntryBuffer2 (projectedfslib.h)

Menyediakan informasi untuk satu file atau direktori ke enumerasi dan memungkinkan pemanggil menentukan informasi yang diperluas.

Syntax

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
);

Parameter-parameternya

[in] dirEntryBufferHandle

Handel buram ke struktur yang menerima informasi tentang entri yang diisi.

[in] fileName

Penunjuk ke string null-terminated yang berisi nama entri

[in, optional] fileBasicInfo

Informasi dasar tentang entri yang akan diisi.

[in, optional] extendedInfo

Pointer ke struct PRJ_EXTENDED_INFO yang menentukan informasi yang diperluas tentang entri yang akan diisi.

Mengembalikan nilai

HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) menunjukkan bahwa dirEntryBufferHandle tidak memiliki cukup ruang untuk entri baru.

E_INVALIDARG menunjukkan bahwa extendedInfo.InfoType tidak dikenali.

Komentar

Penyedia menggunakan rutinitas ini untuk melayani panggilan balik PRJ_GET_DIRECTORY_ENUMERATION_CB . Saat memproses panggilan balik, penyedia memanggil rutinitas ini untuk setiap file atau direktori yang cocok dalam enumerasi. Rutinitas ini memungkinkan penyedia untuk menentukan informasi yang diperluas tentang file atau direktori, seperti apakah itu adalah tautan simbolis.

Jika rutinitas ini mengembalikan HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) saat menambahkan entri ke enumerasi, penyedia mengembalikan S_OK dari panggilan balik dan menunggu panggilan balik PRJ_GET_DIRECTORY_ENUMERATION_CB berikutnya.

Penyedia melanjutkan mengisi enumerasi dengan entri yang coba ditambahkan ketika HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER).

Jika rutinitas ini mengembalikan HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) untuk entri pertama yang ditambahkan selama pemanggilan panggilan balik PRJ_GET_DIRECTORY_ENUMERATION_CB , penyedia harus mengembalikan HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) dari panggilan balik.

Untuk menentukan bahwa entri direktori ini adalah untuk tautan simbolis, penyedia memformat buffer dengan struct PRJ_EXTENDED_INFO tunggal dan meneruskan pointer ke dalam extendedInfo parameter. Penyedia menetapkan bidang struct sebagai berikut:

  • extendedInfo.InfoType = PRJ_EXT_INFO_TYPE_SYMLINK
  • extendedInfo.NextInfoOffset = 0
  • extendedInfo.Symlink.TargetName = <path to the target of the symbolic link>

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10, versi 2004 (10.0; Build 19041)
Server minimum yang didukung Windows Server, versi 2004 (10.0; Build 19041)
Platform Target Windows
Header projectedfslib.h
Library ProjectedFSLib.lib