FSCTL_DELETE_REPARSE_POINT código de controle

O código de controle FSCTL_DELETE_REPARSE_POINT exclui um ponto de nova análise do arquivo ou diretório especificado. Usar FSCTL_DELETE_REPARSE_POINT não exclui o arquivo ou o diretório.

Para executar essa operação, chame ZwFsControlFile com os parâmetros a seguir.

Os minifiltros devem usar FltUntagFile em vez de FSCTL_DELETE_REPARSE_POINT para excluir um ponto de nova análise.

Para obter mais informações sobre pontos de nova análise e o código de controle FSCTL_DELETE_REPARSE_POINT, consulte a documentação do SDK do Microsoft Windows.

Parâmetros

  • FileHandle [in]: identificador de arquivo para o arquivo ou diretório do qual o ponto de nova análise deve ser excluído. O chamador deve ter acesso de gravação ao arquivo ou diretório. Esse parâmetro é necessário e não pode ser NULL.

  • FsControlCode [in]: código de controle para a operação. Use FSCTL_DELETE_REPARSE_POINT para esta operação.

  • InputBuffer [in]: ponteiro para uma estrutura de REPARSE_GUID_DATA_BUFFER ou REPARSE_DATA_BUFFER . A marca especificada no membro ReparseTag dessa estrutura deve corresponder à marca do ponto de nova análise a ser excluída e o membro ReparseDataLength deve ser zero. Além disso, se o ponto de nova análise for um ponto de nova análise de terceiros (não Microsoft), o GUID especificado no membro ReparseGuid da estrutura REPARSE_GUID_DATA_BUFFER deverá corresponder ao GUID do ponto de nova análise a ser excluído.

  • InputBufferLength [in]: Tamanho, em bytes, do buffer apontado pelo parâmetro InputBuffer . Para uma estrutura REPARSE_GUID_DATA_BUFFER, esse valor deve ser exatamente REPARSE_GUID_DATA_BUFFER_HEADER_SIZE. Para uma estrutura REPARSE_DATA_BUFFER, esse valor deve ser exatamente REPARSE_DATA_BUFFER_HEADER_SIZE.

  • OutputBuffer [out]: Nenhum. Definido como NULL.

  • OutputBufferLength [out]: definido como 0.

Bloco de status

ZwFsControlFile retorna STATUS_SUCCESS ou um valor NTSTATUS apropriado, como um dos seguintes:

Código Significado
STATUS_IO_REPARSE_DATA_INVALID Um dos valores de parâmetro especificados era inválido. Este é um código de erro.
STATUS_IO_REPARSE_TAG_INVALID A marca de nova análise especificada pelo chamador era inválida. Este é um código de erro.
STATUS_IO_REPARSE_TAG_MISMATCH A marca de nova análise especificada pelo chamador não correspondeu à marca do ponto de nova análise a ser excluído. Este é um código de erro.
STATUS_REPARSE_ATTRIBUTE_CONFLICT O ponto de nova análise é um ponto de nova análise de terceiros e o GUID de nova análise especificado pelo chamador não correspondeu ao GUID do ponto de nova análise a ser excluído. Este é um código de erro.

Requisitos

Tipo de Requisito Requisito
parâmetro Ntifs.h (inclua Ntifs.h ou Fltkernel.h)

Confira também

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