Routine MRxSetFileInfoAtCleanup
La routine MRxSetFileInfoAtCleanup est appelée par RDBSS pour demander qu’un mini redirecteur réseau définisse les informations de fichier sur un objet de système de fichiers lors du nettoyage.
Syntaxe
PMRX_CALLDOWN MRxSetFileInfoAtCleanup;
NTSTATUS MRxSetFileInfoAtCleanup(
_Inout_ PRX_CONTEXT RxContext
)
{ ... }
Paramètres
RxContext [in, out]
Pointeur vers la structure RX_CONTEXT. Ce paramètre contient l’IRP qui demande l’opération.
Valeur retournée
MRxSetFileInfoAtCleanup retourne STATUS_SUCCESS en cas de réussite ou une valeur NTSTATUS appropriée.
Remarques
RDBSS émet un appel à MRxSetFileInfoAtCleanup pendant le nettoyage, lorsque le dernier handle d’un objet de fichier est fermé. Cela est différent de l’opération de fermeture qui est appelée lorsque la dernière référence à un objet fichier est supprimée.
MRxSetFileInfoAtCleanup est appelé par RDBSS si les horodatages d’un fichier ou la taille d’un fichier ont changé. Les appels à MRxSetFileInfoAtCleanup par RDBSS sont effectués séparément pour chacune de ces modifications. Si la taille du fichier et les horodatages ont changé, RDBSS effectue deux appels à MRxSetFileInfoAtCleanup.
Avant d’appeler MRxSetFileInfoAtCleanup, RDBSS modifie les membres suivants dans la structure RX_CONTEXT pointée par le paramètre RxContext si les horodatages d’un fichier ont changé :
Le membre Info.FileInformationClass est défini sur une valeur FILE_INFORMATION_CLASS de FileBasicInformation.
Le membre Info.Buffer est défini sur une structure FILE_BASIC_INFORMATION allouée sur la pile.
Le membre Info.Length est défini sur la taille d’une structure FILE_BASIC_INFORMATION.
Avant d’appeler MRxSetFileInfoAtCleanup, RDBSS modifie les membres suivants dans la structure RX_CONTEXT pointée par le paramètre RxContext si la taille d’un fichier a changé :
Le membre Info.FileInformationClass est défini sur une valeur FILE_INFORMATION_CLASS de FileEndOfFileInformation.
Le membre Info.Buffer est défini sur une structure FILE_END_OF_FILE_INFORMATION allouée sur la pile.
Le membre Info.Length est défini sur sizeof(FILE_END_OF_FILE_INFORMATION).
RDBSS ignore la valeur de retour de MRxSetFileInfoAtCleanup.
Un mini-redirecteur réseau peut choisir de ne rien faire dans cette routine et de retourner STATUS_SUCCESS. Toute modification apportée à la taille du fichier ou aux horodatages sera gérée pendant l’opération de nettoyage.
Configuration requise
Plateforme cible |
Desktop (Expérience utilisateur) |
En-tête |
Mrx.h (inclure Mrx.h) |