7 #define DBT_NO_DISK_SPACE 0x47
8 #define DBT_CONFIGMGPRIVATE 0x7FFF
9 #define DBT_DEVICEARRIVAL 0x8000
10 #define DBT_DEVICEQUERYREMOVE 0x8001
11 #define DBT_DEVICEQUERYREMOVEFAILED 0x8002
12 #define DBT_DEVICEREMOVEPENDING 0x8003
13 #define DBT_DEVICEREMOVECOMPLETE 0x8004
14 #define DBT_DEVICETYPESPECIFIC 0x8005
15 #define DBT_DEVTYP_OEM 0
16 #define DBT_DEVTYP_DEVNODE 1
17 #define DBT_DEVTYP_VOLUME 2
18 #define DBT_DEVTYP_PORT 3
19 #define DBT_DEVTYP_NET 4
20 #define DBT_DEVTYP_DEVICEINTERFACE 5
21 #define DBT_APPYBEGIN 0
23 #define DBT_DEVNODES_CHANGED 7
24 #define DBT_QUERYCHANGECONFIG 0x17
25 #define DBT_CONFIGCHANGED 0x18
26 #define DBT_CONFIGCHANGECANCELED 0x19
27 #define DBT_MONITORCHANGE 0x1B
28 #define DBT_SHELLLOGGEDON 32
29 #define DBT_CONFIGMGAPI32 34
30 #define DBT_VXDINITCOMPLETE 35
31 #define DBT_VOLLOCKQUERYLOCK 0x8041
32 #define DBT_VOLLOCKLOCKTAKEN 0x8042
33 #define DBT_VOLLOCKLOCKFAILED 0x8043
34 #define DBT_VOLLOCKQUERYUNLOCK 0x8044
35 #define DBT_VOLLOCKLOCKRELEASED 0x8045
36 #define DBT_VOLLOCKUNLOCKFAILED 0x8046
37 #define DBT_USERDEFINED 0xFFFF
41 /* Also defined in winuser.h */
42 #define BSM_ALLCOMPONENTS 0
43 #define BSM_APPLICATIONS 8
44 #define BSM_ALLDESKTOPS 16
45 #define BSM_INSTALLABLEDRIVERS 4
46 #define BSM_NETDRIVER 2
48 #define BSF_FLUSHDISK 0x00000004
49 #define BSF_FORCEIFHUNG 0x00000020
50 #define BSF_IGNORECURRENTTASK 0x00000002
51 #define BSF_NOHANG 0x00000008
52 #define BSF_NOTIMEOUTIFNOTHUNG 0x00000040
53 #define BSF_POSTMESSAGE 0x00000010
54 #define BSF_QUERY 0x00000001
55 #if (_WIN32_WINNT >= 0x0500)
56 #define BSF_ALLOWSFW 0x00000080
57 #define BSF_SENDNOTIFYMESSAGE 0x00000100
58 #endif /* (_WIN32_WINNT >= 0x0500) */
59 #if (_WIN32_WINNT >= 0x0501)
60 #define BSF_LUID 0x00000400
61 #define BSF_RETURNHDESK 0x00000200
62 #endif /* (_WIN32_WINNT >= 0x0501) */
64 #define BSF_MSGSRV32ISOK_BIT 31
65 #define BSF_MSGSRV32ISOK 0x80000000
67 typedef struct _DEV_BROADCAST_HDR
{
69 DWORD dbch_devicetype
;
71 } DEV_BROADCAST_HDR
,*PDEV_BROADCAST_HDR
;
72 typedef struct _DEV_BROADCAST_OEM
{
74 DWORD dbco_devicetype
;
76 DWORD dbco_identifier
;
78 } DEV_BROADCAST_OEM
,*PDEV_BROADCAST_OEM
;
79 typedef struct _DEV_BROADCAST_PORT_A
{
81 DWORD dbcp_devicetype
;
84 } DEV_BROADCAST_PORT_A
, *PDEV_BROADCAST_PORT_A
;
85 typedef struct _DEV_BROADCAST_PORT_W
{
87 DWORD dbcp_devicetype
;
90 } DEV_BROADCAST_PORT_W
, *PDEV_BROADCAST_PORT_W
;
91 typedef struct _DEV_BROADCAST_USERDEFINED
{
92 struct _DEV_BROADCAST_HDR dbud_dbh
;
94 } DEV_BROADCAST_USERDEFINED
;
95 typedef struct _DEV_BROADCAST_VOLUME
{
97 DWORD dbcv_devicetype
;
101 } DEV_BROADCAST_VOLUME
,*PDEV_BROADCAST_VOLUME
;
102 typedef struct _DEV_BROADCAST_DEVICEINTERFACE
{
104 DWORD dbcc_devicetype
;
108 } DEV_BROADCAST_DEVICEINTERFACE
, *PDEV_BROADCAST_DEVICEINTERFACE
;
111 typedef DEV_BROADCAST_PORT_W DEV_BROADCAST_PORT
, *PDEV_BROADCAST_PORT
;
113 typedef DEV_BROADCAST_PORT_A DEV_BROADCAST_PORT
, *PDEV_BROADCAST_PORT
;