estrutura DEVICE_DSM_NOTIFICATION_PARAMETERS (ntddstor.h)

A estrutura DEVICE_DSM_NOTIFICATION_PARAMETERS especifica os parâmetros de uma operação de notificação relacionada aos atributos de conjunto de dados de um dispositivo.

Sintaxe

typedef struct _DEVICE_DSM_NOTIFICATION_PARAMETERS {
  ULONG Size;
  ULONG Flags;
  ULONG NumFileTypeIDs;
  GUID  FileTypeID[ANYSIZE_ARRAY];
} DEVICE_DSM_NOTIFICATION_PARAMETERS, *PDEVICE_DSM_NOTIFICATION_PARAMETERS;

Membros

Size

O tamanho total, em bytes, dessa estrutura. O valor desse membro deve incluir o tamanho total, em bytes, do membro FileTypeID .

Flags

Um sinalizador que especifica as características da operação de notificação. O membro Flags deve ser definido como um dos seguintes valores:

Sinalizador Significado
DEVICE_DSM_NOTIFY_FLAG_BEGIN O intervalo lba (endereço de bloco lógico) está sendo usado atualmente pelos tipos de arquivo especificados no membro FileTypeID . O intervalo LBA é especificado pelo intervalo do conjunto de dados dentro do conteúdo de uma solicitação de IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES .
DEVICE_DSM_NOTIFY_FLAG_END O intervalo LBA não está mais sendo usado pelos tipos de arquivo especificados no membro FileTypeID .

NumFileTypeIDs

O número de entradas no membro FileTypeID .

FileTypeID[ANYSIZE_ARRAY]

Um ou mais valores guid que especificam o tipo de arquivo para a operação de notificação. A tabela a seguir descreve os valores de GUID FileTypeID .

Valor de GUID Descrição
FILE_TYPE_NOTIFICATION_GUID_PAGE_FILE Especifica uma operação de notificação para um arquivo de página.
FILE_TYPE_NOTIFICATION_GUID_HIBERNATION_FILE Especifica uma operação de notificação para o arquivo de hibernação do sistema.
FILE_TYPE_NOTIFICATION_GUID_CRASHDUMP_FILE Especifica uma operação de notificação para um arquivo de despejo de memória do sistema.

Comentários

A notificação é especificada no bloco de parâmetros dentro do conteúdo de uma solicitação de IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES . Consulte Visão geral do gerenciamento do conjunto de dados para obter uma descrição geral do layout da carga.

A partir do Windows 7, o sistema de arquivos NTFS notifica a pilha de armazenamento quando o intervalo do conjunto de dados lba (endereçamento de bloco lógico) é alterado para um conjunto especificado de arquivos. O sistema de arquivos emite essa notificação enviando à pilha de armazenamento uma solicitação IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES com um buffer do sistema que contém uma estrutura DEVICE_DSM_INPUT . Para a operação de notificação, o sistema de arquivos define os membros da estrutura DEVICE_DSM_INPUT da seguinte maneira:

  • O membro Action é definido como DeviceDsmAction_Notification.
  • Os membros ParameterBlockOffset e ParameterBlockLength especificam o local e o tamanho do bloco de parâmetros para a operação de notificação. O bloco de parâmetros é formatado como uma estrutura DEVICE_DSM_NOTIFICATION_PARAMETERS.
  • Se o membro Flags estiver definido como zero, os membros DataSetRangesOffset e DataSetRangesLength especificarão o bloco de intervalo do conjunto de dados dentro do conteúdo IOCTL.
  • Se o membro Flags estiver definido como DEVICE_DSM_FLAG_ENTIRE_DATA_SET_RANGE, os membros DataSetRangesOffset e DataSetRangesLength serão definidos como zero e a ação de notificação incluirá todo o intervalo de conjunto de dados para os arquivos especificados.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7
Servidor mínimo com suporte Windows Server 2008 R2
Cabeçalho ntddstor.h (inclua Ntddstor.h)

Confira também

Visão geral do gerenciamento do conjunto de dados

Descrições do DEVICE_DSM_ACTION

DEVICE_DSM_INPUT

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES