Функция PrjFillDirEntryBuffer2 (projectedfslib.h)
Предоставляет перечислению сведения для одного файла или каталога и позволяет вызывающей объекту указать расширенные сведения.
Синтаксис
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).
Если эта подпрограмма возвращает HRESULT_FROM_WIN32 (ERROR_INSUFFICIENT_BUFFER) для первой записи, добавленной во время вызова обратного вызова PRJ_GET_DIRECTORY_ENUMERATION_CB , поставщик должен вернуть HRESULT_FROM_WIN32 (ERROR_INSUFFICIENT_BUFFER) из обратного вызова.
Символические связи
Чтобы указать, что эта запись каталога предназначена для символьной ссылки, поставщик форматирует буфер с помощью одной структуры PRJ_EXTENDED_INFO и передает на него указатель в параметре extendedInfo
. Поставщик задает поля структуры следующим образом:
extendedInfo.InfoType = PRJ_EXT_INFO_TYPE_SYMLINK
extendedInfo.NextInfoOffset = 0
extendedInfo.Symlink.TargetName = <path to the target of the symbolic link>
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10, версия 2004 (10.0; Сборка 19041) |
Минимальная версия сервера | Windows Server версии 2004 (10.0; Сборка 19041) |
Целевая платформа | Windows |
Header | projectedfslib.h |