Export (0) Print
Expand All
IRP
MDL
Expand Minimize

TARGET_DEVICE_CUSTOM_NOTIFICATION structure

The TARGET_DEVICE_CUSTOM_NOTIFICATION structure describes a custom device event.

Syntax


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;

Members

Version

Specifies the version of the data structure, currently 1.

Size

Specifies the size of the structure, in bytes, including the first three standard members plus the event-specific data.

Event

Specifies a GUID identifying the event. GUIDs for custom event notification are defined by the components that use this mechanism.

FileObject

Pointer to a file object for the device.

NameBufferOffset

Specifies the offset, in bytes, from beginning of CustomDataBuffer where text begins. A value of -1 indicates that there is no text.

CustomDataBuffer

A variable-length buffer, optionally containing binary data at the start of the buffer, followed by an optional text buffer (word-aligned).

Remarks

Kernel-mode components use this structure for custom event notification: to signal a custom event (IoReportTargetDeviceChange[Asynchronous]) and when handling a custom event (in a notification callback routine).

This structure accommodates both a variable-length binary data buffer and a variable-length Unicode text buffer. The NameBufferOffset must indicate where the text buffer begins, so the data can be delivered in the appropriate format (ANSI or Unicode) to user-mode applications that registered for handle-based notification with RegisterDeviceNotification. See the Microsoft Windows SDK documentation for information about RegisterDeviceNotification.

Requirements

Header

Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h)

See also

IoRegisterPlugPlayNotification
IoReportTargetDeviceChange
IoReportTargetDeviceChangeAsynchronous

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft