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