annotate win32/dbt.d @ 1:4a9dcbd9e54f

-files of 0.13 beta -fixes so that it now compiles with the current dmd version
author marton@basel.hu
date Tue, 05 Apr 2011 20:44:01 +0200
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
1 /***********************************************************************\
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
2 * dbt.d *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
3 * *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
4 * Windows API header module *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
5 * *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
6 * Translated from MinGW Windows headers *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
7 * by Vladimir Vlasov *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
8 * *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
9 * Placed into public domain *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
10 \***********************************************************************/
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
11 module win32.dbt;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
12
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
13 import win32.w32api, win32.windef;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
14 import win32.basetyps; // for GUID
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
15
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
16 // FIXME: clean up Windows version support
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
17
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
18 enum : DWORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
19 DBT_NO_DISK_SPACE = 0x47,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
20 DBT_CONFIGMGPRIVATE = 0x7FFF,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
21 DBT_DEVICEARRIVAL = 0x8000,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
22 DBT_DEVICEQUERYREMOVE = 0x8001,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
23 DBT_DEVICEQUERYREMOVEFAILED = 0x8002,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
24 DBT_DEVICEREMOVEPENDING = 0x8003,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
25 DBT_DEVICEREMOVECOMPLETE = 0x8004,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
26 DBT_DEVICETYPESPECIFIC = 0x8005,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
27 DBT_DEVTYP_OEM = 0,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
28 DBT_DEVTYP_DEVNODE = 1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
29 DBT_DEVTYP_VOLUME = 2,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
30 DBT_DEVTYP_PORT = 3,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
31 DBT_DEVTYP_NET = 4
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
32 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
33
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
34 static if (_WIN32_WINDOWS >= 0x040A) {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
35 enum : DWORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
36 DBT_DEVTYP_DEVICEINTERFACE = 5,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
37 DBT_DEVTYP_HANDLE = 6
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
38 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
39 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
40
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
41 enum : DWORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
42 DBT_APPYBEGIN,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
43 DBT_APPYEND,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
44 DBT_DEVNODES_CHANGED = 7,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
45 DBT_QUERYCHANGECONFIG = 0x17,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
46 DBT_CONFIGCHANGED = 0x18,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
47 DBT_CONFIGCHANGECANCELED = 0x19,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
48 DBT_MONITORCHANGE = 0x1B,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
49 DBT_SHELLLOGGEDON = 32,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
50 DBT_CONFIGMGAPI32 = 34,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
51 DBT_VXDINITCOMPLETE = 35,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
52 DBT_VOLLOCKQUERYLOCK = 0x8041,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
53 DBT_VOLLOCKLOCKTAKEN = 0x8042,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
54 DBT_VOLLOCKLOCKFAILED = 0x8043,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
55 DBT_VOLLOCKQUERYUNLOCK = 0x8044,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
56 DBT_VOLLOCKLOCKRELEASED = 0x8045,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
57 DBT_VOLLOCKUNLOCKFAILED = 0x8046,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
58 DBT_USERDEFINED = 0xFFFF
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
59 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
60
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
61 enum : WORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
62 DBTF_MEDIA = 1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
63 DBTF_NET = 2
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
64 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
65
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
66 enum : DWORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
67 BSM_ALLCOMPONENTS = 0,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
68 BSM_APPLICATIONS = 8,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
69 BSM_ALLDESKTOPS = 16,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
70 BSM_INSTALLABLEDRIVERS = 4,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
71 BSM_NETDRIVER = 2,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
72 BSM_VXDS = 1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
73 BSF_FLUSHDISK = 0x00000004,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
74 BSF_FORCEIFHUNG = 0x00000020,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
75 BSF_IGNORECURRENTTASK = 0x00000002,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
76 BSF_NOHANG = 0x00000008,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
77 BSF_NOTIMEOUTIFNOTHUNG = 0x00000040,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
78 BSF_POSTMESSAGE = 0x00000010,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
79 BSF_QUERY = 0x00000001,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
80 BSF_MSGSRV32ISOK_BIT = 31,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
81 BSF_MSGSRV32ISOK = 0x80000000
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
82 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
83
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
84 static if (_WIN32_WINNT >= 0x0500) {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
85 enum : DWORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
86 BSF_ALLOWSFW = 0x00000080,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
87 BSF_SENDNOTIFYMESSAGE = 0x00000100
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
88 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
89 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
90
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
91 static if (_WIN32_WINNT >= 0x0501) {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
92 enum : DWORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
93 BSF_LUID = 0x00000400,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
94 BSF_RETURNHDESK = 0x00000200
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
95 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
96 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
97
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
98 struct DEV_BROADCAST_HDR {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
99 DWORD dbch_size = DEV_BROADCAST_HDR.sizeof;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
100 DWORD dbch_devicetype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
101 DWORD dbch_reserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
102 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
103 alias DEV_BROADCAST_HDR* PDEV_BROADCAST_HDR;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
104
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
105 struct DEV_BROADCAST_OEM {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
106 DWORD dbco_size = DEV_BROADCAST_OEM.sizeof;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
107 DWORD dbco_devicetype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
108 DWORD dbco_reserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
109 DWORD dbco_identifier;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
110 DWORD dbco_suppfunc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
111 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
112 alias DEV_BROADCAST_OEM* PDEV_BROADCAST_OEM;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
113
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
114 struct DEV_BROADCAST_PORT_A {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
115 DWORD dbcp_size = DEV_BROADCAST_PORT_A.sizeof;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
116 DWORD dbcp_devicetype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
117 DWORD dbcp_reserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
118 char _dbcp_name;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
119 char* dbcp_name() { return &_dbcp_name; }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
120 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
121 alias DEV_BROADCAST_PORT_A* PDEV_BROADCAST_PORT_A;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
122
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
123 struct DEV_BROADCAST_PORT_W {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
124 DWORD dbcp_size = DEV_BROADCAST_PORT_W.sizeof;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
125 DWORD dbcp_devicetype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
126 DWORD dbcp_reserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
127 WCHAR _dbcp_name;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
128 WCHAR* dbcp_name() { return &_dbcp_name; }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
129 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
130 alias DEV_BROADCAST_PORT_W* PDEV_BROADCAST_PORT_W;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
131
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
132 struct DEV_BROADCAST_USERDEFINED {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
133 DEV_BROADCAST_HDR dbud_dbh;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
134 char _dbud_szName;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
135 char* dbud_szName() { return &_dbud_szName; }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
136 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
137
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
138 struct DEV_BROADCAST_VOLUME {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
139 DWORD dbcv_size = DEV_BROADCAST_VOLUME.sizeof;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
140 DWORD dbcv_devicetype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
141 DWORD dbcv_reserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
142 DWORD dbcv_unitmask;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
143 WORD dbcv_flags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
144 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
145 alias DEV_BROADCAST_VOLUME* PDEV_BROADCAST_VOLUME;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
146
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
147 version (Unicode) {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
148 alias DEV_BROADCAST_PORT_W DEV_BROADCAST_PORT;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
149 } else {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
150 alias DEV_BROADCAST_PORT_A DEV_BROADCAST_PORT;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
151 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
152 alias DEV_BROADCAST_PORT* PDEV_BROADCAST_PORT;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
153
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
154 static if ((_WIN32_WINDOWS >= 0x0410) || (_WIN32_WINNT >= 0x0500)) {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
155 struct DEV_BROADCAST_DEVICEINTERFACE_A {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
156 DWORD dbcc_size = DEV_BROADCAST_DEVICEINTERFACE_A.sizeof;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
157 DWORD dbcc_devicetype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
158 DWORD dbcc_reserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
159 GUID dbcc_classguid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
160 char _dbcc_name;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
161 char* dbcc_name() { return &_dbcc_name; }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
162 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
163 alias DEV_BROADCAST_DEVICEINTERFACE_A* PDEV_BROADCAST_DEVICEINTERFACE_A;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
164
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
165 struct DEV_BROADCAST_DEVICEINTERFACE_W {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
166 DWORD dbcc_size = DEV_BROADCAST_DEVICEINTERFACE_W.sizeof;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
167 DWORD dbcc_devicetype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
168 DWORD dbcc_reserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
169 GUID dbcc_classguid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
170 WCHAR _dbcc_name;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
171 WCHAR* dbcc_name() { return &_dbcc_name; }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
172 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
173 alias DEV_BROADCAST_DEVICEINTERFACE_W* PDEV_BROADCAST_DEVICEINTERFACE_W;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
174
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
175 version (Unicode) {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
176 alias DEV_BROADCAST_DEVICEINTERFACE_W DEV_BROADCAST_DEVICEINTERFACE;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
177 } else {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
178 alias DEV_BROADCAST_DEVICEINTERFACE_A DEV_BROADCAST_DEVICEINTERFACE;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
179 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
180 alias DEV_BROADCAST_DEVICEINTERFACE* PDEV_BROADCAST_DEVICEINTERFACE;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
181
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
182 struct DEV_BROADCAST_HANDLE {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
183 DWORD dbch_size = DEV_BROADCAST_HANDLE.sizeof;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
184 DWORD dbch_devicetype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
185 DWORD dbch_reserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
186 HANDLE dbch_handle;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
187 DWORD dbch_hdevnotify;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
188 GUID dbch_eventguid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
189 LONG dbch_nameoffset;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
190 BYTE _dbch_data;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
191 BYTE* dbch_data() { return &_dbch_data; }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
192 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
193 alias DEV_BROADCAST_HANDLE* PDEV_BROADCAST_HANDLE;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
194 }