Compartilhar via


estrutura DELETE_USN_JOURNAL_DATA (winioctl.h)

Contém informações sobre a exclusão de um diário de alterações de USN (números de sequência de atualização) usando o código de controle FSCTL_DELETE_USN_JOURNAL .

Sintaxe

typedef struct {
  DWORDLONG UsnJournalID;
  DWORD     DeleteFlags;
} DELETE_USN_JOURNAL_DATA, *PDELETE_USN_JOURNAL_DATA;

Membros

UsnJournalID

O identificador do diário de alteração a ser excluído.

Se o diário estiver ativo e a exclusão for solicitada definindo o sinalizador USN_DELETE_FLAG_DELETE no membro DeleteFlags , esse identificador deverá especificar o diário de alteração para o volume atual. Use FSCTL_QUERY_USN_JOURNAL para recuperar o identificador deste diário de alterações. Se, nesse caso, o identificador não for para o diário de alterações do volume atual, FSCTL_DELETE_USN_JOURNAL falhará.

Se a notificação em vez da exclusão for solicitada definindo apenas o sinalizador USN_DELETE_FLAG_NOTIFY em DeleteFlags, UsnJournalID será ignorado.

DeleteFlags

Indica se a exclusão ou notificação sobre a exclusão é executada ou ambas. O membro DeleteFlags deve conter um ou ambos os valores a seguir.

Valor Significado
USN_DELETE_FLAG_DELETE
0x00000001
Se esse sinalizador estiver definido e o sinalizador USN_DELETE_FLAG_NOTIFY não estiver definido, a operação FSCTL_DELETE_USN_JOURNAL iniciará o processo de exclusão do diário e retornará imediatamente. O processo de exclusão de diário continua, se necessário, entre reinicializações do sistema.

Se esse sinalizador estiver definido e o sinalizador USN_DELETE_FLAG_NOTIFY também estiver definido, ocorrerá exclusão e notificação. Se esse sinalizador estiver definido e o diário estiver ativo, você deverá fornecer o identificador para o diário de alterações para o volume atual em UsnJournalID ou a operação falhará. Se o diário não estiver ativo, UsnJournalID será ignorado e o diário será excluído.

USN_DELETE_FLAG_NOTIFY
0x00000002
Se esse sinalizador estiver definido, a chamada configurará a notificação sobre quando a exclusão for concluída. A solicitação de exclusão de diário é concluída quando o processo de exclusão do diário é concluído. Se esse sinalizador estiver definido e o sinalizador USN_DELETE_FLAG_DELETE não estiver definido, a chamada configurará a notificação de uma exclusão que pode já estar em andamento. Por exemplo, quando o aplicativo é iniciado, ele pode usar esse sinalizador para determinar se uma exclusão está em andamento.

Se esse sinalizador estiver definido e o sinalizador USN_DELETE_FLAG_DELETE também estiver definido, ocorrerá exclusão e notificação. A notificação é executada usando uma porta de conclusão de E/S ou outro mecanismo para notificação de evento assíncrono.

Comentários

Para obter mais informações, consulte Criando, modificando e excluindo uma Diário de alteração.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho winioctl.h (inclua Windows.h)

Confira também

FSCTL_DELETE_USN_JOURNAL

FSCTL_QUERY_USN_JOURNAL