code de contrôle FSCTL_DELETE_REPARSE_POINT

Le code de contrôle FSCTL_DELETE_REPARSE_POINT supprime un point d’analyse du fichier ou du répertoire spécifié. L’utilisation de FSCTL_DELETE_REPARSE_POINT ne supprime pas le fichier ou le répertoire.

Pour effectuer cette opération, appelez ZwFsControlFile avec les paramètres suivants.

Les minifiltres doivent utiliser FltUntagFile au lieu de FSCTL_DELETE_REPARSE_POINT pour supprimer un point d’analyse.

Pour plus d’informations sur les points d’analyse et le code de contrôle FSCTL_DELETE_REPARSE_POINT, consultez la documentation Microsoft Windows SDK.

Paramètres

  • FileHandle [in] : handle de fichier pour le fichier ou le répertoire à partir duquel le point d’analyse doit être supprimé. L’appelant doit avoir un accès en écriture au fichier ou au répertoire. Ce paramètre est obligatoire et ne peut pas avoir la valeur NULL.

  • FsControlCode [in] : code de contrôle pour l’opération. Utilisez FSCTL_DELETE_REPARSE_POINT pour cette opération.

  • InputBuffer [in] : pointeur vers une structure REPARSE_GUID_DATA_BUFFER ou REPARSE_DATA_BUFFER . La balise spécifiée dans le membre ReparseTag de cette structure doit correspondre à la balise du point d’analyse à supprimer, et le membre ReparseDataLength doit être égal à zéro. En outre, si le point d’analyse est un point d’analyse tiers (non-Microsoft), le GUID spécifié dans le membre ReparseGuid de la structure REPARSE_GUID_DATA_BUFFER doit correspondre au GUID du point d’analyse à supprimer.

  • InputBufferLength [in] : taille, en octets, de la mémoire tampon vers laquelle pointe le paramètre InputBuffer . Pour une structure REPARSE_GUID_DATA_BUFFER, cette valeur doit être exactement REPARSE_GUID_DATA_BUFFER_HEADER_SIZE. Pour une structure REPARSE_DATA_BUFFER, cette valeur doit être exactement REPARSE_DATA_BUFFER_HEADER_SIZE.

  • OutputBuffer [out] : Aucun. valeur de l’en-tête définie sur Null.

  • OutputBufferLength [out] : défini sur 0.

Bloc d’état

ZwFsControlFile retourne STATUS_SUCCESS ou une valeur NTSTATUS appropriée, par exemple :

Code Signification
STATUS_IO_REPARSE_DATA_INVALID L’une des valeurs de paramètre spécifiées n’était pas valide. Il s’agit d’un code d’erreur.
STATUS_IO_REPARSE_TAG_INVALID La balise d’analyse spécifiée par l’appelant n’était pas valide. Il s’agit d’un code d’erreur.
STATUS_IO_REPARSE_TAG_MISMATCH La balise d’analyse spécifiée par l’appelant ne correspond pas à la balise du point d’analyse à supprimer. Il s’agit d’un code d’erreur.
STATUS_REPARSE_ATTRIBUTE_CONFLICT Le point d’analyse est un point d’analyse tiers, et le GUID d’analyse spécifié par l’appelant ne correspond pas au GUID du point d’analyse à supprimer. Il s’agit d’un code d’erreur.

Configuration requise

Type d’exigence Condition requise
En-tête Ntifs.h (inclure Ntifs.h ou Fltkernel.h)

Voir aussi

FLT_PARAMETERS pour IRP_MJ_FILE_SYSTEM_CONTROL

FltTagFile

FltUntagFile

FSCTL_GET_REPARSE_POINT

FSCTL_SET_REPARSE_POINT

IRP_MJ_FILE_SYSTEM_CONTROL

IsReparseTagMicrosoft

IsReparseTagNameSurrogate

REPARSE_DATA_BUFFER

REPARSE_GUID_DATA_BUFFER

ZwFsControlFile