PRJ_START_DIRECTORY_ENUMERATION_CB fonction de rappel (projectedfslib.h)

Informe le fournisseur qu’une énumération d’annuaires démarre.

Syntaxe

PRJ_START_DIRECTORY_ENUMERATION_CB PrjStartDirectoryEnumerationCb;

HRESULT PrjStartDirectoryEnumerationCb(
  [in] const PRJ_CALLBACK_DATA *callbackData,
  [in] const GUID *enumerationId
)
{...}

Paramètres

[in] callbackData

Informations sur l’opération. Les membres callbackData suivants sont nécessaires pour implémenter ce rappel :

FilePathName Identifie le répertoire à énumérer.
VersionInfo Fournit des informations de version pour le répertoire à énumérer.

Le fournisseur ne peut accéder à cette mémoire tampon que lorsque le rappel est en cours d’exécution. S’il souhaite empêcher l’opération et qu’il nécessite des données de cette mémoire tampon, il doit en faire sa propre copie.

[in] enumerationId

Identificateur de cette session d’énumération.

Valeur retournée

Code de retour Description
S_OK
Le fournisseur a terminé l’opération avec succès.
HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
Le répertoire à énumérer n’existe pas dans le magasin de stockage du fournisseur.
HRESULT_FROM_WIN32(ERROR_IO_PENDING)
Le fournisseur souhaite terminer l’opération ultérieurement.
 

Un code d’erreur HRESULT approprié si le fournisseur échoue à l’opération.

Remarques

ProjFS demande une énumération d’annuaires au fournisseur en appelant d’abord ce rappel, puis un ou plusieurs rappels PRJ_GET_DIRECTORY_ENUMERATION_CB , puis le rappel PRJ_END_DIRECTORY_ENUMERATION_CB . Étant donné que plusieurs énumérations peuvent se produire en parallèle au même emplacement, ProjFS utilise l’argument énumérationId pour associer les appels de rappel dans une seule session d’énumération, ce qui signifie qu’un ensemble donné d’appels aux rappels d’énumération utilise la même valeur pour énumérationId pour la même session.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 1809 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête projectedfslib.h