FSCTL_SET_REPARSE_POINT_EX código de control
El código de control FSCTL_SET_REPARSE_POINT_EX establece un punto de reanálisis en un archivo o directorio.
Para realizar esta operación, llame a ZwFsControlFile con los parámetros siguientes.
Los minifiltros deben usar FltTagFile en lugar de FSCTL_SET_REPARSE_POINT_EX para establecer 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_SET_REPARSE_POINT_EX, consulte la documentación de Microsoft Windows SDK.
Parámetros
FileHandle: identificador de archivo para el archivo o directorio en el que se va a establecer un punto de reanálisis. Este parámetro es obligatorio y no puede ser NULL.
FsControlCode: código de control para la operación. Use FSCTL_SET_REPARSE_POINT_EX para esta operación.
InputBuffer: puntero a un REPARSE_GUID_DATA_BUFFER asignado por el autor de la llamada o REPARSE_DATA_BUFFER_EX estructura que contiene los datos del punto de reanálisis.
InputBufferLength: 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 al menos REPARSE_GUID_DATA_BUFFER_HEADER_SIZE, más el tamaño de los datos definidos por el usuario y debe ser menor o igual que MAXIMUM_REPARSE_DATA_BUFFER_SIZE. Para una estructura de REPARSE_DATA_BUFFER_EX, este valor debe ser al menos REPARSE_DATA_BUFFER_HEADER_SIZE, además del tamaño de los datos definidos por el usuario y debe ser menor o igual que MAXIMUM_REPARSE_DATA_BUFFER_SIZE.
OutputBuffer: no se usa con esta operación; se establece en NULL.
OutputBufferLength: no se usa con esta operación; se establece en cero.
Bloque de estado
ZwFsControlFile devuelve STATUS_SUCCESS o un valor NTSTATUS adecuado, como uno de los siguientes:
Valor | Descripción |
---|---|
STATUS_DIRECTORY_NOT_EMPTY | No se puede establecer un punto de reanálisis en un directorio no vacío. Se trata de un código de error. |
STATUS_EAS_NOT_SUPPORTED | No se puede establecer un punto de reanálisis en un archivo si esta solicitud está en una transacción. Se trata de un código de error. |
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_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 modificar. Se trata de un código de error. |
STATUS_NOT_A_REPARSE_POINT | El archivo o directorio no es un punto de reanálisis. 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 coincide con el GUID del punto de reanálisis que se va a modificar. Se trata de un código de error. |
Requisitos
Tipo de requisito | Requisito |
---|---|
Encabezado | Ntifs.h (incluya Ntifs.h o Fltkernel.h) |