Fonction PrjFillDirEntryBuffer2 (projectedfslib.h)
Fournit des informations pour un fichier ou un répertoire dans une énumération et permet à l’appelant de spécifier des informations étendues.
Syntaxe
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
);
Paramètres
[in] dirEntryBufferHandle
Handle opaque à une structure qui reçoit des informations sur les entrées renseignées.
[in] fileName
Pointeur vers une chaîne terminée par null qui contient le nom de l’entrée
[in, optional] fileBasicInfo
Informations de base sur l’entrée à remplir.
[in, optional] extendedInfo
Pointeur vers un struct PRJ_EXTENDED_INFO spécifiant des informations étendues sur l’entrée à remplir.
Valeur retournée
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) indique que dirEntryBufferHandle n’a pas suffisamment d’espace pour la nouvelle entrée.
E_INVALIDARG indique que extendedInfo.InfoType n’est pas reconnu.
Remarques
Le fournisseur utilise cette routine pour traiter un rappel PRJ_GET_DIRECTORY_ENUMERATION_CB . Lors du traitement du rappel, le fournisseur appelle cette routine pour chaque fichier ou répertoire correspondant dans l’énumération. Cette routine permet au fournisseur de spécifier des informations étendues sur le fichier ou le répertoire, par exemple s’il s’agit d’un lien symbolique.
Si cette routine retourne HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) lors de l’ajout d’une entrée à l’énumération, le fournisseur retourne S_OK à partir du rappel et attend le rappel PRJ_GET_DIRECTORY_ENUMERATION_CB suivant.
Le fournisseur reprend le remplissage de l’énumération avec l’entrée qu’il essayait d’ajouter lorsqu’il a obtenu HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER).
Si cette routine retourne HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) pour la première entrée ajoutée lors d’un appel d’un rappel PRJ_GET_DIRECTORY_ENUMERATION_CB , le fournisseur doit retourner HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) à partir du rappel.
Liens symboliques
Pour spécifier que cette entrée de répertoire est destinée à un lien symbolique, le fournisseur met en forme une mémoire tampon avec un seul struct PRJ_EXTENDED_INFO et lui transmet un pointeur dans le extendedInfo
paramètre . Le fournisseur définit les champs du struct comme suit :
extendedInfo.InfoType = PRJ_EXT_INFO_TYPE_SYMLINK
extendedInfo.NextInfoOffset = 0
extendedInfo.Symlink.TargetName = <path to the target of the symbolic link>
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10, version 2004 (10.0 ; Build 19041) |
Serveur minimal pris en charge | Windows Server, version 2004 (10.0 ; Build 19041) |
Plateforme cible | Windows |
En-tête | projectedfslib.h |