Welcome to mirror list, hosted at ThFree Co, Russian Federation.

ddeml.h « include « w32api « winsup - cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 67b4199fe7302121584e82a30a7b58c098bd7e3b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
#ifndef _DDEML_H
#define _DDEML_H
#if __GNUC__ >=3
#pragma GCC system_header
#endif

#ifdef __cplusplus
extern "C" {
#endif

#define EXPENTRY	CALLBACK
#define CP_WINANSI	1004
#define CP_WINUNICODE	1200
#define XTYPF_NOBLOCK	2
#define XTYPF_NODATA	4
#define XTYPF_ACKREQ	8
#define XCLASS_MASK	0xFC00
#define XCLASS_BOOL	0x1000
#define XCLASS_DATA	0x2000
#define XCLASS_FLAGS	0x4000
#define XCLASS_NOTIFICATION	0x8000
#define XST_NULL	0
#define XST_INCOMPLETE	1
#define XST_CONNECTED	2
#define XST_INIT1	3
#define XST_INIT2	4
#define XST_REQSENT	5
#define XST_DATARCVD	6
#define XST_POKESENT	7
#define XST_POKEACKRCVD	8
#define XST_EXECSENT	9
#define XST_EXECACKRCVD	10
#define XST_ADVSENT 11
#define XST_UNADVSENT 12
#define XST_ADVACKRCVD 13
#define XST_UNADVACKRCVD 14
#define XST_ADVDATASENT 15
#define XST_ADVDATAACKRCVD 16
#define XTYP_ERROR	(XCLASS_NOTIFICATION|XTYPF_NOBLOCK)
#define XTYP_ADVDATA	(16|XCLASS_FLAGS)
#define XTYP_ADVREQ	(32|XCLASS_DATA|XTYPF_NOBLOCK)
#define XTYP_ADVSTART	(0x30|XCLASS_BOOL)
#define XTYP_ADVSTOP	(0x0040|XCLASS_NOTIFICATION)
#define XTYP_EXECUTE	(0x0050|XCLASS_FLAGS)
#define XTYP_CONNECT	(0x0060|XCLASS_BOOL|XTYPF_NOBLOCK)
#define XTYP_CONNECT_CONFIRM	(0x0070|XCLASS_NOTIFICATION|XTYPF_NOBLOCK)
#define XTYP_XACT_COMPLETE	(0x0080|XCLASS_NOTIFICATION)
#define XTYP_POKE	(0x0090|XCLASS_FLAGS)
#define XTYP_REGISTER	(0x00A0|XCLASS_NOTIFICATION|XTYPF_NOBLOCK)
#define XTYP_REQUEST	(0x00B0|XCLASS_DATA)
#define XTYP_DISCONNECT	(0x00C0|XCLASS_NOTIFICATION|XTYPF_NOBLOCK)
#define XTYP_UNREGISTER	(0x00D0|XCLASS_NOTIFICATION|XTYPF_NOBLOCK)
#define XTYP_WILDCONNECT	(0x00E0|XCLASS_DATA|XTYPF_NOBLOCK)
#define XTYP_MASK	0xF0
#define XTYP_SHIFT	4
#define TIMEOUT_ASYNC	0xFFFFFFFF
#define QID_SYNC	0xFFFFFFFF
#define ST_CONNECTED	1
#define ST_ADVISE	2
#define ST_ISLOCAL	4
#define ST_BLOCKED	8
#define ST_CLIENT	16
#define ST_TERMINATED	32
#define ST_INLIST	64
#define ST_BLOCKNEXT	128
#define ST_ISSELF	256
#define CADV_LATEACK 0xFFFF
#define DMLERR_NO_ERROR	0
#define DMLERR_FIRST	0x4000
#define DMLERR_ADVACKTIMEOUT	0x4000
#define DMLERR_BUSY	0x4001
#define DMLERR_DATAACKTIMEOUT	0x4002
#define DMLERR_DLL_NOT_INITIALIZED	0x4003
#define	DMLERR_DLL_USAGE	0x4004
#define DMLERR_EXECACKTIMEOUT	0x4005
#define DMLERR_INVALIDPARAMETER	0x4006
#define DMLERR_LOW_MEMORY	0x4007
#define DMLERR_MEMORY_ERROR	0x4008
#define DMLERR_NOTPROCESSED	0x4009
#define DMLERR_NO_CONV_ESTABLISHED	0x400a
#define DMLERR_POKEACKTIMEOUT	0x400b
#define DMLERR_POSTMSG_FAILED	0x400c
#define DMLERR_REENTRANCY	0x400d
#define DMLERR_SERVER_DIED	0x400e
#define DMLERR_SYS_ERROR	0x400f
#define DMLERR_UNADVACKTIMEOUT	0x4010
#define DMLERR_UNFOUND_QUEUE_ID	0x4011
#define DMLERR_LAST	0x4011
#define DDE_FACK	0x8000
#define DDE_FBUSY	0x4000
#define DDE_FDEFERUPD	0x4000
#define DDE_FACKREQ	0x8000
#define DDE_FRELEASE	0x2000
#define DDE_FREQUESTED	0x1000
#define DDE_FAPPSTATUS	0x00ff
#define DDE_FNOTPROCESSED	0
#define DDE_FACKRESERVED	(~(DDE_FACK|DDE_FBUSY|DDE_FAPPSTATUS))
#define DDE_FADVRESERVED	(~(DDE_FACKREQ|DDE_FDEFERUPD))
#define DDE_FDATRESERVED	(~(DDE_FACKREQ|DDE_FRELEASE|DDE_FREQUESTED))
#define DDE_FPOKRESERVED	(~DDE_FRELEASE)
#define MSGF_DDEMGR	0x8001
#define CBR_BLOCK	((HDDEDATA)0xffffffff)
#define CBF_FAIL_SELFCONNECTIONS	0x1000
#define CBF_FAIL_CONNECTIONS	0x2000
#define CBF_FAIL_ADVISES	0x4000
#define CBF_FAIL_EXECUTES	0x8000
#define CBF_FAIL_POKES	0x10000
#define CBF_FAIL_REQUESTS	0x20000
#define CBF_FAIL_ALLSVRXACTIONS	0x3f000
#define CBF_SKIP_CONNECT_CONFIRMS	0x40000
#define CBF_SKIP_REGISTRATIONS	0x80000
#define CBF_SKIP_UNREGISTRATIONS	0x100000
#define CBF_SKIP_DISCONNECTS	0x200000
#define CBF_SKIP_ALLNOTIFICATIONS	0x3c0000
#define APPCMD_CLIENTONLY	0x10L
#define APPCMD_FILTERINITS	0x20L
#define APPCMD_MASK	0xFF0L
#define APPCLASS_STANDARD	0
#define APPCLASS_MASK	0xFL
#define EC_ENABLEALL	0
#define EC_ENABLEONE	ST_BLOCKNEXT
#define EC_DISABLE	ST_BLOCKED
#define EC_QUERYWAITING	2
#define DNS_REGISTER	1
#define DNS_UNREGISTER	2
#define DNS_FILTERON	4
#define DNS_FILTEROFF	8
#define HDATA_APPOWNED	1
#define MAX_MONITORS	4
#define APPCLASS_MONITOR	1L
#define XTYP_MONITOR	(XCLASS_NOTIFICATION|XTYPF_NOBLOCK|0xF0)
#define MF_HSZ_INFO	0x1000000
#define MF_SENDMSGS	0x2000000
#define MF_POSTMSGS	0x4000000
#define MF_CALLBACKS	0x8000000
#define MF_ERRORS	0x10000000
#define MF_LINKS	0x20000000
#define MF_CONV	0x40000000
#define MF_MASK 0xFF000000
#define MH_CREATE	1
#define MH_KEEP	2
#define MH_DELETE	3
#define MH_CLEANUP	4

DECLARE_HANDLE(HCONVLIST);
DECLARE_HANDLE(HCONV);
DECLARE_HANDLE(HSZ);
DECLARE_HANDLE(HDDEDATA);
typedef HDDEDATA CALLBACK FNCALLBACK(UINT,UINT,HCONV,HSZ,HSZ,HDDEDATA,DWORD,DWORD);
typedef HDDEDATA(CALLBACK *PFNCALLBACK)(UINT,UINT,HCONV,HSZ,HSZ,HDDEDATA,DWORD,DWORD);
typedef struct tagHSZPAIR {
	HSZ	hszSvc;
	HSZ	hszTopic;
} HSZPAIR, *PHSZPAIR;
typedef struct tagCONVCONTEXT {
	UINT	cb;
	UINT	wFlags;
	UINT	wCountryID;
	int	iCodePage;
	DWORD	dwLangID;
	DWORD	dwSecurity;
	SECURITY_QUALITY_OF_SERVICE qos;
} CONVCONTEXT,*PCONVCONTEXT;
typedef struct tagCONVINFO {
	DWORD	cb;
	DWORD	hUser;
	HCONV	hConvPartner;
	HSZ	hszSvcPartner;
	HSZ	hszServiceReq;
	HSZ	hszTopic;
	HSZ	hszItem;
	UINT	wFmt;
	UINT	wType;
	UINT	wStatus;
	UINT	wConvst;
	UINT	wLastError;
	HCONVLIST	hConvList;
	CONVCONTEXT ConvCtxt;
	HWND	hwnd;
	HWND	hwndPartner;
} CONVINFO,*PCONVINFO;
typedef struct tagDDEML_MSG_HOOK_DATA {
	UINT	uiLo;
	UINT	uiHi;
	DWORD	cbData;
	DWORD	Data[8];
} DDEML_MSG_HOOK_DATA;
typedef struct tagMONHSZSTRUCT {
	UINT	cb;
	BOOL	fsAction;
	DWORD	dwTime;
	HSZ	hsz;
	HANDLE	hTask;
	TCHAR	str[1];
} MONHSZSTRUCT, *PMONHSZSTRUCT;
typedef struct tagMONLINKSTRUCT {
	UINT	cb;
	DWORD	dwTime;
	HANDLE	hTask;
	BOOL	fEstablished;
	BOOL	fNoData;
	HSZ	hszSvc;
	HSZ	hszTopic;
	HSZ	hszItem;
	UINT	wFmt;
	BOOL	fServer;
	HCONV	hConvServer;
	HCONV	hConvClient;
} MONLINKSTRUCT, *PMONLINKSTRUCT;
typedef struct tagMONCONVSTRUCT {
	UINT	cb;
	BOOL	fConnect;
	DWORD	dwTime;
	HANDLE	hTask;
	HSZ	hszSvc;
	HSZ	hszTopic;
	HCONV	hConvClient;
	HCONV	hConvServer;
} MONCONVSTRUCT, *PMONCONVSTRUCT;
typedef struct tagMONCBSTRUCT {
	UINT	cb;
	DWORD	dwTime;
	HANDLE	hTask;
	DWORD	dwRet;
	UINT	wType;
	UINT	wFmt;
	HCONV	hConv;
	HSZ	hsz1;
	HSZ	hsz2;
	HDDEDATA	hData;
	ULONG_PTR	dwData1;
	ULONG_PTR	dwData2;
	CONVCONTEXT	cc;
	DWORD	cbData;
	DWORD	Data[8];
} MONCBSTRUCT, *PMONCBSTRUCT;
typedef struct tagMONERRSTRUCT {
	UINT	cb;
	UINT	wLastError;
	DWORD	dwTime;
	HANDLE	hTask;
} MONERRSTRUCT, *PMONERRSTRUCT;
typedef struct tagMONMSGSTRUCT {
	UINT	cb;
	HWND	hwndTo;
	DWORD	dwTime;
	HANDLE	hTask;
	UINT	wMsg;
	WPARAM	wParam;
	LPARAM	lParam;
	DDEML_MSG_HOOK_DATA dmhd;
} MONMSGSTRUCT, *PMONMSGSTRUCT;

BOOL WINAPI DdeAbandonTransaction(DWORD,HCONV,DWORD);
PBYTE WINAPI DdeAccessData(HDDEDATA,PDWORD);
HDDEDATA WINAPI DdeAddData(HDDEDATA,PBYTE,DWORD,DWORD);
HDDEDATA WINAPI DdeClientTransaction(PBYTE,DWORD,HCONV,HSZ,UINT,UINT,DWORD,PDWORD);
int WINAPI DdeCmpStringHandles(HSZ,HSZ);
HCONV WINAPI DdeConnect(DWORD,HSZ,HSZ,PCONVCONTEXT);
HCONVLIST WINAPI DdeConnectList(DWORD,HSZ,HSZ,HCONVLIST,PCONVCONTEXT);
HDDEDATA WINAPI DdeCreateDataHandle(DWORD,PBYTE,DWORD,DWORD,HSZ,UINT,UINT);
HSZ WINAPI DdeCreateStringHandleA(DWORD,LPCSTR,int);
HSZ WINAPI DdeCreateStringHandleW(DWORD,LPCWSTR,int);
BOOL WINAPI DdeDisconnect(HCONV);
BOOL WINAPI DdeDisconnectList(HCONVLIST);
BOOL WINAPI DdeEnableCallback(DWORD,HCONV,UINT);
BOOL WINAPI DdeFreeDataHandle(HDDEDATA);
BOOL WINAPI DdeFreeStringHandle(DWORD,HSZ);
DWORD WINAPI DdeGetData(HDDEDATA,PBYTE,DWORD,DWORD);
UINT WINAPI DdeGetLastError(DWORD);
BOOL WINAPI DdeImpersonateClient(HCONV);
UINT WINAPI DdeInitializeA(PDWORD,PFNCALLBACK,DWORD,DWORD);
UINT WINAPI DdeInitializeW(PDWORD,PFNCALLBACK,DWORD,DWORD);
BOOL WINAPI DdeKeepStringHandle(DWORD,HSZ);
HDDEDATA WINAPI DdeNameService(DWORD,HSZ,HSZ,UINT);
BOOL WINAPI DdePostAdvise(DWORD,HSZ,HSZ);
UINT WINAPI DdeQueryConvInfo(HCONV,DWORD,PCONVINFO);
HCONV WINAPI DdeQueryNextServer(HCONVLIST,HCONV);
DWORD WINAPI DdeQueryStringA(DWORD,HSZ,LPSTR,DWORD,int);
DWORD WINAPI DdeQueryStringW(DWORD,HSZ,LPWSTR,DWORD,int);
HCONV WINAPI DdeReconnect(HCONV);
BOOL WINAPI DdeSetUserHandle(HCONV,DWORD,DWORD);
BOOL WINAPI DdeUnaccessData(HDDEDATA);
BOOL WINAPI DdeUninitialize(DWORD);

#ifdef UNICODE
#define SZDDESYS_TOPIC	L"System"
#define SZDDESYS_ITEM_TOPICS	L"Topics"
#define SZDDESYS_ITEM_SYSITEMS	L"SysItems"
#define SZDDESYS_ITEM_RTNMSG	L"ReturnMessage"
#define SZDDESYS_ITEM_STATUS	L"Status"
#define SZDDESYS_ITEM_FORMATS	L"Formats"
#define SZDDESYS_ITEM_HELP	L"Help"
#define SZDDE_ITEM_ITEMLIST	L"TopicItemList"
#define DdeCreateStringHandle DdeCreateStringHandleW
#define DdeInitialize DdeInitializeW
#define DdeQueryString DdeQueryStringW
#else
#define SZDDESYS_TOPIC	"System"
#define SZDDESYS_ITEM_TOPICS	"Topics"
#define SZDDESYS_ITEM_SYSITEMS	"SysItems"
#define SZDDESYS_ITEM_RTNMSG	"ReturnMessage"
#define SZDDESYS_ITEM_STATUS	"Status"
#define SZDDESYS_ITEM_FORMATS	"Formats"
#define SZDDESYS_ITEM_HELP	"Help"
#define SZDDE_ITEM_ITEMLIST	"TopicItemList"
#define DdeCreateStringHandle DdeCreateStringHandleA
#define DdeInitialize DdeInitializeA
#define DdeQueryString DdeQueryStringA
#endif
#ifdef __cplusplus
}
#endif
#endif /* _DDEML_H */