_DEV_BROADCAST_USERDEFINED
The _DEV_BROADCAST_USERDEFINED
structure contains the user-defined message and optional data associated with
the DBT_USERDEFINED
struct _DEV_BROADCAST_USERDEFINED {
struct _DEV_BROADCAST_HDR dbud_dbh;
char
dbud_szName[1]; //
ASCIIZ name
// BYTE dbud_rgbUserDefined[]; // Optional user-defined contents
};
Members
dbud_dbh
Information
about the device affected by a WM_DEVICECHANGE
dbud_szName
A
case-sensitive, null-terminated string that names the message. The name must
consist of the vendor name, a backslash, followed by arbitrary user-defined null-terminated
text. For example:
"WidgetWare\QueryScannerShutdown"
or
"WidgetWare\Video Q39S\AdapterReady"
dbud_rgbUserDefined
Optional
user-defined information.
Because this
structure contains variable length fields, use this structure tag as a template
for creating a pointer to a user-defined structure. Note that the structure
must not contain pointers. For example:
#define NAME_LENGTH 32
#define USER_LENGTH 50
typedef struct
tagWIDGET_WARE_DEV_BROADCAST_USERDEFINED
{
struct _DEV_BROADCAST_HDR DBHeader;
char
szName[NAME_LENGTH]
BYTE
UserDefined[USER_LENGTH];
} WIDGET_WARE_DEV_BROADCAST_USERDEFINED;
See Also
DBT_USERDEFINED, DEV_BROADCAST_HDR30__ZME, WM_DEVICECHANGE