Differences From Artifact [80302d7833fbc86f]:
- File
src/win32/ddeml.d
- 2015-04-21 10:46:55 - part of checkin [4e2933c620] on branch trunk - Rebased to the latest verson dmd 2.067. Not yet verified the outcome. (user: kinaba) [annotate]
To Artifact [421fb3636ad89d57]:
- File
src/win32/ddeml.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
5 * * 5 * *
6 * Translated from MinGW Windows headers * 6 * Translated from MinGW Windows headers *
7 * by Stewart Gordon * 7 * by Stewart Gordon *
8 * * 8 * *
9 * Placed into public domain * 9 * Placed into public domain *
10 \***********************************************************************/ 10 \***********************************************************************/
11 module win32.ddeml; 11 module win32.ddeml;
12 pragma(lib, "user32.lib"); | 12 pragma(lib, "user32");
13 13
14 private import win32.basetsd, win32.windef, win32.winnt; 14 private import win32.basetsd, win32.windef, win32.winnt;
15 15
16 enum : int { 16 enum : int {
17 CP_WINANSI = 1004, 17 CP_WINANSI = 1004,
18 CP_WINUNICODE = 1200 18 CP_WINUNICODE = 1200
19 } 19 }
................................................................................................................................................................................
185 enum : int { 185 enum : int {
186 MH_CREATE = 1, 186 MH_CREATE = 1,
187 MH_KEEP = 2, 187 MH_KEEP = 2,
188 MH_DELETE = 3, 188 MH_DELETE = 3,
189 MH_CLEANUP = 4 189 MH_CLEANUP = 4
190 } 190 }
191 191
192 alias HANDLE HCONVLIST, HCONV, HSZ, HDDEDATA; | 192 mixin DECLARE_HANDLE!("HCONVLIST");
> 193 mixin DECLARE_HANDLE!("HCONV");
> 194 mixin DECLARE_HANDLE!("HSZ");
> 195 mixin DECLARE_HANDLE!("HDDEDATA");
193 196
194 extern (Windows) alias HDDEDATA 197 extern (Windows) alias HDDEDATA
195 function(UINT, UINT, HCONV, HSZ, HSZ, HDDEDATA, DWORD, DWORD) PFNCALLBACK; 198 function(UINT, UINT, HCONV, HSZ, HSZ, HDDEDATA, DWORD, DWORD) PFNCALLBACK;
196 199
197 struct HSZPAIR { 200 struct HSZPAIR {
198 HSZ hszSvc; 201 HSZ hszSvc;
199 HSZ hszTopic; 202 HSZ hszTopic;
................................................................................................................................................................................
228 CONVCONTEXT ConvCtxt; 231 CONVCONTEXT ConvCtxt;
229 HWND hwnd; 232 HWND hwnd;
230 HWND hwndPartner; 233 HWND hwndPartner;
231 } 234 }
232 alias CONVINFO* PCONVINFO; 235 alias CONVINFO* PCONVINFO;
233 236
234 struct DDEML_MSG_HOOK_DATA { 237 struct DDEML_MSG_HOOK_DATA {
235 UINT uiLo; | 238 UINT_PTR uiLo;
236 UINT uiHi; | 239 UINT_PTR uiHi;
237 DWORD cbData; 240 DWORD cbData;
238 DWORD[8] Data; 241 DWORD[8] Data;
239 } 242 }
240 243
241 struct MONHSZSTRUCT { 244 struct MONHSZSTRUCT {
242 UINT cb = MONHSZSTRUCT.sizeof; 245 UINT cb = MONHSZSTRUCT.sizeof;
243 int fsAction; 246 int fsAction;