Compartir a través de


código de control de FSCTL_DELETE_REPARSE_POINT

El código de control FSCTL_DELETE_REPARSE_POINT elimina un punto de reanálisis del archivo o directorio especificados. El uso de FSCTL_DELETE_REPARSE_POINT no elimina el archivo ni el directorio.

Para realizar esta operación, llame a ZwFsControlFile con los parámetros siguientes.

Los minifiltros deben usar FltUntagFile en lugar de FSCTL_DELETE_REPARSE_POINT para eliminar un punto de reanálisis.

Para obtener más información sobre los puntos de reanálisis y el código de control de FSCTL_DELETE_REPARSE_POINT, consulte la documentación de Microsoft Windows SDK.

Parámetros

  • FileHandle [in]: identificador de archivo del archivo o directorio desde el que se va a eliminar el punto de reanálisis. El autor de la llamada debe tener acceso de escritura al archivo o directorio. Este parámetro es obligatorio y no puede ser NULL.

  • FsControlCode [in]: Código de control para la operación. Use FSCTL_DELETE_REPARSE_POINT para esta operación.

  • InputBuffer [in]: puntero a una estructura de REPARSE_GUID_DATA_BUFFER o REPARSE_DATA_BUFFER . La etiqueta especificada en el miembro ReparseTag de esta estructura debe coincidir con la etiqueta del punto de reanálisis que se va a eliminar y el miembro ReparseDataLength debe ser cero. Además, si el punto de reanálisis es un punto de reanálisis de terceros (que no es de Microsoft), el GUID especificado en el miembro ReparseGuid de la estructura REPARSE_GUID_DATA_BUFFER debe coincidir con el GUID del punto de reanálisis que se va a eliminar.

  • InputBufferLength [in]: Tamaño, en bytes, del búfer al que apunta el parámetro InputBuffer . Para una estructura de REPARSE_GUID_DATA_BUFFER, este valor debe ser exactamente REPARSE_GUID_DATA_BUFFER_HEADER_SIZE. Para una estructura de REPARSE_DATA_BUFFER, este valor debe ser exactamente REPARSE_DATA_BUFFER_HEADER_SIZE.

  • OutputBuffer [out]: Ninguno. Definición en NULL

  • OutputBufferLength [out]: establezca en 0.

Bloque de estado

ZwFsControlFile devuelve STATUS_SUCCESS o un valor NTSTATUS adecuado, como uno de los siguientes:

Código Significado
STATUS_IO_REPARSE_DATA_INVALID Uno de los valores de parámetro especificados no era válido. Se trata de un código de error.
STATUS_IO_REPARSE_TAG_INVALID La etiqueta de reanálisis especificada por el autor de la llamada no era válida. Se trata de un código de error.
STATUS_IO_REPARSE_TAG_MISMATCH La etiqueta de reanálisis especificada por el autor de la llamada no coincide con la etiqueta del punto de reanálisis que se va a eliminar. Se trata de un código de error.
STATUS_REPARSE_ATTRIBUTE_CONFLICT El punto de reanálisis es un punto de reanálisis de terceros y el GUID de reanálisis especificado por el autor de la llamada no coincidía con el GUID del punto de reanálisis que se va a eliminar. Se trata de un código de error.

Requisitos

Tipo de requisito Requisito
Encabezado Ntifs.h (incluya Ntifs.h o Fltkernel.h)

Consulte también

FLT_PARAMETERS para 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