структура _DEV_BROADCAST_USERDEFINED (dbt.h)

Содержит определяемое пользователем событие и необязательные данные, связанные с событием устройства DBT_USERDEFINED .

Синтаксис

struct _DEV_BROADCAST_USERDEFINED {
  struct _DEV_BROADCAST_HDR dbud_dbh;
  char                      dbud_szName[1];
};

Члены

dbud_dbh

Сведения об устройстве, на которое влияет WM_DEVICECHANGE сообщение, как указано в структуре DEV_BROADCAST_HDR . Поскольку _DEV_BROADCAST_USERDEFINED имеет переменную длину, dbch_size элемент структуры dbud_dbh должен быть размером в байтах всей структуры, включая часть переменной длины.

dbud_szName[1]

Указатель на строку с учетом регистра, заканчивающуюся нулевым значением, которая называет сообщение. Строка должна состоять из имени поставщика, обратной косой черты, за которой следует произвольный определяемый пользователем текст с символом NULL.

Комментарии

Так как эта структура содержит поля переменной длины, используйте ее в качестве шаблона для создания указателя на определяемую пользователем структуру. Обратите внимание, что структура не должна содержать указатели. В следующем примере показана такая определяемая пользователем структура.

#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;

Требования

Требование Значение
Минимальная версия клиента Windows XP
Минимальная версия сервера Windows Server 2003
Верхняя часть dbt.h

См. также раздел

DBT_USERDEFINED

DEV_BROADCAST_HDR

WM_DEVICECHANGE