Partilhar via


estrutura TARGET_DEVICE_CUSTOM_NOTIFICATION (wdm.h)

A estrutura TARGET_DEVICE_CUSTOM_NOTIFICATION descreve um evento de dispositivo personalizado.

Sintaxe

typedef struct _TARGET_DEVICE_CUSTOM_NOTIFICATION {
  USHORT       Version;
  USHORT       Size;
  GUID         Event;
  PFILE_OBJECT FileObject;
  LONG         NameBufferOffset;
  UCHAR        CustomDataBuffer[1];
} TARGET_DEVICE_CUSTOM_NOTIFICATION, *PTARGET_DEVICE_CUSTOM_NOTIFICATION;

Membros

Version

Especifica a versão da estrutura de dados, atualmente 1.

Size

Especifica o tamanho da estrutura, em bytes, incluindo os três primeiros membros padrão mais os dados específicos do evento.

Event

Especifica um GUID que identifica o evento. Os GUIDs para notificação de evento personalizado são definidos pelos componentes que usam esse mecanismo.

FileObject

Ponteiro para um objeto de arquivo para o dispositivo.

NameBufferOffset

Especifica o deslocamento, em bytes, desde o início de CustomDataBuffer em que o texto começa. Um valor de -1 indica que não há texto.

CustomDataBuffer[1]

Um buffer de comprimento variável, opcionalmente contendo dados binários no início do buffer, seguido por um buffer de texto opcional (alinhado a palavras).

Observações

Os componentes do modo kernel usam essa estrutura para notificação de evento personalizada: para sinalizar um evento personalizado (IoReportTargetDeviceChange[assíncrono ]) e ao manipular um evento personalizado (em uma rotina de retorno de chamada de notificação).

Essa estrutura acomoda um buffer de dados binários de comprimento variável e um buffer de texto Unicode de comprimento variável. O NameBufferOffset deve indicar onde o buffer de texto começa, para que os dados possam ser entregues no formato apropriado (ANSI ou Unicode) para aplicativos no modo de usuário registrados para notificação baseada em identificador com RegisterDeviceNotification. Consulte também RegisterDeviceNotification .

Requisitos

Requisito Valor
cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)

Consulte também

IoRegisterPlugPlayNotification

IoReportTargetDeviceChange

IoReportTargetDeviceChangeAsynchronous

RegisterDeviceNotification