annotate win32/oaidl.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 * oaidl.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 * *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
8 * Placed into public domain *
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
9 \***********************************************************************/
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
10 module win32.oaidl;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
11
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
12 private import win32.basetyps, win32.unknwn, win32.windef, win32.wtypes;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
13
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
14 const DISPID_UNKNOWN = -1;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
15 const DISPID_VALUE = 0;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
16 const DISPID_PROPERTYPUT = -3;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
17 const DISPID_NEWENUM = -4;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
18 const DISPID_EVALUATE = -5;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
19 const DISPID_CONSTRUCTOR = -6;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
20 const DISPID_DESTRUCTOR = -7;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
21 const DISPID_COLLECT = -8;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
22
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
23 const FADF_AUTO = 1;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
24 const FADF_STATIC = 2;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
25 const FADF_EMBEDDED = 4;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
26 const FADF_FIXEDSIZE = 16;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
27 const FADF_RECORD = 32;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
28 const FADF_HAVEIID = 64;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
29 const FADF_HAVEVARTYPE = 128;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
30 const FADF_BSTR = 256;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
31 const FADF_UNKNOWN = 512;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
32 const FADF_DISPATCH = 1024;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
33 const FADF_VARIANT = 2048;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
34 const FADF_RESERVED = 0xf0e8;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
35 const FADF_DATADELETED = 0x1000;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
36 const FADF_CREATEVECTOR = 0x2000;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
37
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
38 const PARAMFLAG_NONE = 0;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
39 const PARAMFLAG_FIN = 1;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
40 const PARAMFLAG_FOUT = 2;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
41 const PARAMFLAG_FLCID = 4;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
42 const PARAMFLAG_FRETVAL = 8;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
43 const PARAMFLAG_FOPT = 16;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
44 const PARAMFLAG_FHASDEFAULT = 32;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
45
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
46 const IDLFLAG_NONE = PARAMFLAG_NONE;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
47 const IDLFLAG_FIN = PARAMFLAG_FIN;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
48 const IDLFLAG_FOUT = PARAMFLAG_FOUT;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
49 const IDLFLAG_FLCID = PARAMFLAG_FLCID;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
50 const IDLFLAG_FRETVAL = PARAMFLAG_FRETVAL;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
51
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
52 const IMPLTYPEFLAG_FDEFAULT = 1;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
53 const IMPLTYPEFLAG_FSOURCE = 2;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
54 const IMPLTYPEFLAG_FRESTRICTED = 4;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
55 const IMPLTYPEFLAG_FDEFAULTVTABLE = 8;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
56
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
57
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
58 enum SYSKIND {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
59 SYS_WIN16,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
60 SYS_WIN32,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
61 SYS_MAC
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
62 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
63
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
64 enum LIBFLAGS {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
65 LIBFLAG_FRESTRICTED = 1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
66 LIBFLAG_FCONTROL = 2,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
67 LIBFLAG_FHIDDEN = 4,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
68 LIBFLAG_FHASDISKIMAGE = 8
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
69 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
70
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
71 struct TLIBATTR {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
72 GUID guid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
73 LCID lcid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
74 SYSKIND syskind;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
75 WORD wMajorVerNum;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
76 WORD wMinorVerNum;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
77 WORD wLibFlags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
78 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
79 alias TLIBATTR* LPTLIBATTR;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
80
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
81 alias CY CURRENCY;
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 struct SAFEARRAYBOUND {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
84 ULONG cElements;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
85 LONG lLbound;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
86 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
87 alias SAFEARRAYBOUND* LPSAFEARRAYBOUND;
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 struct SAFEARR_BSTR {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
90 ULONG Size;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
91 wireBSTR* aBstr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
92 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
93
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
94 struct SAFEARR_UNKNOWN {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
95 ULONG Size;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
96 IUnknown** apUnknown;
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
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
99 struct SAFEARR_DISPATCH {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
100 ULONG Size;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
101 LPDISPATCH* apDispatch;
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
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
104 struct SAFEARR_VARIANT {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
105 ULONG Size;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
106 _wireVARIANT* aVariant;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
107 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
108
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
109 enum SF_TYPE {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
110 SF_ERROR=VARENUM.VT_ERROR,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
111 SF_I1=VARENUM.VT_I1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
112 SF_I2=VARENUM.VT_I2,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
113 SF_I4=VARENUM.VT_I4,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
114 SF_I8=VARENUM.VT_I8,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
115 SF_BSTR=VARENUM.VT_BSTR,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
116 SF_UNKNOWN=VARENUM.VT_UNKNOWN,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
117 SF_DISPATCH=VARENUM.VT_DISPATCH,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
118 SF_VARIANT=VARENUM.VT_VARIANT
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
119 }
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 struct _wireBRECORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
122 ULONG fFlags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
123 ULONG clSize;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
124 LPRECORDINFO* pRecInfo;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
125 byte* pRecord;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
126 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
127 alias _wireBRECORD* wireBRECORD;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
128
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
129 struct SAFEARR_BRECORD {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
130 ULONG Size;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
131 wireBRECORD* aRecord;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
132 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
133
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
134 struct SAFEARR_HAVEIID {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
135 ULONG Size;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
136 IUnknown** apUnknown;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
137 IID iid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
138 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
139
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
140 struct SAFEARRAYUNION {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
141 ULONG sfType;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
142 union _u {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
143 SAFEARR_BSTR BstrStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
144 SAFEARR_UNKNOWN UnknownStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
145 SAFEARR_DISPATCH DispatchStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
146 SAFEARR_VARIANT VariantStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
147 SAFEARR_BRECORD RecordStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
148 SAFEARR_HAVEIID HaveIidStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
149 BYTE_SIZEDARR ByteStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
150 WORD_SIZEDARR WordStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
151 DWORD_SIZEDARR LongStr;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
152 HYPER_SIZEDARR HyperStr;
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 _u u;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
155 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
156
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
157 struct _wireSAFEARRAY {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
158 USHORT cDims;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
159 USHORT fFeatures;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
160 ULONG cbElements;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
161 ULONG cLocks;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
162 SAFEARRAYUNION uArrayStructs;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
163 SAFEARRAYBOUND rgsabound[1];
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 alias _wireSAFEARRAY* wireSAFEARRAY;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
166
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
167 alias wireSAFEARRAY* wirePSAFEARRAY;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
168
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
169 struct SAFEARRAY {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
170 USHORT cDims;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
171 USHORT fFeatures;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
172 ULONG cbElements;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
173 ULONG cLocks;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
174 PVOID pvData;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
175 SAFEARRAYBOUND rgsabound[1];
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
176 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
177 alias SAFEARRAY* LPSAFEARRAY;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
178
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
179 struct VARIANT {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
180 union {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
181 struct {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
182 VARTYPE vt;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
183 WORD wReserved1;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
184 WORD wReserved2;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
185 WORD wReserved3;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
186 union {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
187 int lVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
188 LONGLONG llVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
189 ubyte bVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
190 short iVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
191 float fltVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
192 double dblVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
193 VARIANT_BOOL boolVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
194 SCODE scode;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
195 CY cyVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
196 DATE date;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
197 BSTR bstrVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
198 IUnknown punkVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
199 IDispatch pdispVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
200 SAFEARRAY* parray;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
201 ubyte* pbVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
202 short* piVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
203 int* plVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
204 float* pfltVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
205 double* pdblVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
206 VARIANT_BOOL* pboolVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
207 _VARIANT_BOOL* pbool;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
208 SCODE* pscode;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
209 CY* pcyVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
210 DATE* pdate;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
211 BSTR* pbstrVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
212 IUnknown* ppunkVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
213 IDispatch* ppdispVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
214 SAFEARRAY** pparray;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
215 VARIANT* pvarVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
216 void* byref;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
217 CHAR cVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
218 USHORT uiVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
219 ULONG ulVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
220 ULONGLONG ullVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
221 INT intVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
222 UINT uintVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
223 DECIMAL* pdecVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
224 CHAR* pcVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
225 USHORT* puiVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
226 ULONG* pulVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
227 INT* pintVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
228 UINT* puintVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
229 struct {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
230 PVOID pvRecord;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
231 IRecordInfo pRecInfo;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
232 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
233 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
234 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
235 DECIMAL decVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
236 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
237 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
238 alias VARIANT* LPVARIANT;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
239
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
240 alias VARIANT VARIANTARG;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
241 alias VARIANT* LPVARIANTARG;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
242
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
243 struct _wireVARIANT {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
244 DWORD clSize;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
245 DWORD rpcReserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
246 USHORT vt;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
247 USHORT wReserved1;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
248 USHORT wReserved2;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
249 USHORT wReserved3;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
250 union {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
251 LONG lVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
252 LONGLONG llVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
253 BYTE bVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
254 SHORT iVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
255 FLOAT fltVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
256 DOUBLE dblVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
257 VARIANT_BOOL boolVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
258 SCODE scode;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
259 CY cyVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
260 DATE date;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
261 wireBSTR bstrVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
262 IUnknown* punkVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
263 LPDISPATCH pdispVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
264 wirePSAFEARRAY parray;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
265 wireBRECORD brecVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
266 BYTE* pbVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
267 SHORT* piVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
268 LONG* plVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
269 FLOAT* pfltVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
270 DOUBLE* pdblVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
271 VARIANT_BOOL* pboolVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
272 SCODE* pscode;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
273 CY* pcyVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
274 DATE* pdate;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
275 wireBSTR* pbstrVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
276 IUnknown** ppunkVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
277 LPDISPATCH* ppdispVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
278 wirePSAFEARRAY* pparray;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
279 wireVARIANT* pvarVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
280 CHAR cVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
281 USHORT uiVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
282 ULONG ulVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
283 ULONGLONG ullVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
284 INT intVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
285 UINT uintVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
286 DECIMAL decVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
287 DECIMAL* pdecVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
288 CHAR* pcVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
289 USHORT* puiVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
290 ULONG* pulVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
291 INT* pintVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
292 UINT* puintVal;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
293 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
294 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
295 alias _wireVARIANT* wireVARIANT;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
296
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
297 alias LONG DISPID;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
298 alias DISPID MEMBERID;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
299 alias DWORD HREFTYPE;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
300
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
301 enum TYPEKIND {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
302 TKIND_ENUM, TKIND_RECORD, TKIND_MODULE, TKIND_INTERFACE, TKIND_DISPATCH,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
303 TKIND_COCLASS, TKIND_ALIAS, TKIND_UNION, TKIND_MAX
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
304 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
305
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
306 struct TYPEDESC {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
307 union {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
308 TYPEDESC* lptdesc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
309 ARRAYDESC* lpadesc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
310 HREFTYPE hreftype;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
311 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
312 VARTYPE vt;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
313 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
314
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
315 struct ARRAYDESC {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
316 TYPEDESC tdescElem;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
317 USHORT cDims;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
318 SAFEARRAYBOUND rgbounds[1];
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
319 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
320
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
321 struct PARAMDESCEX {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
322 ULONG cBytes;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
323 VARIANTARG varDefaultValue;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
324 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
325 alias PARAMDESCEX* LPPARAMDESCEX;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
326
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
327 struct PARAMDESC {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
328 LPPARAMDESCEX pparamdescex;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
329 USHORT wParamFlags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
330 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
331 alias PARAMDESC* LPPARAMDESC;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
332
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
333 struct IDLDESC {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
334 ULONG dwReserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
335 USHORT wIDLFlags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
336 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
337 alias IDLDESC* LPIDLDESC;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
338
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
339 struct ELEMDESC {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
340 TYPEDESC tdesc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
341 union {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
342 IDLDESC idldesc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
343 PARAMDESC paramdesc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
344 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
345 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
346 alias ELEMDESC* LPELEMDESC;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
347
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
348 struct TYPEATTR {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
349 GUID guid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
350 LCID lcid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
351 DWORD dwReserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
352 MEMBERID memidConstructor;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
353 MEMBERID memidDestructor;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
354 LPOLESTR lpstrSchema;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
355 ULONG cbSizeInstance;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
356 TYPEKIND typekind;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
357 WORD cFuncs;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
358 WORD cVars;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
359 WORD cImplTypes;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
360 WORD cbSizeVft;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
361 WORD cbAlignment;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
362 WORD wTypeFlags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
363 WORD wMajorVerNum;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
364 WORD wMinorVerNum;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
365 TYPEDESC tdescAlias;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
366 IDLDESC idldescType;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
367 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
368 alias TYPEATTR* LPTYPEATTR;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
369
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
370 struct DISPPARAMS {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
371 VARIANTARG* rgvarg;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
372 DISPID* rgdispidNamedArgs;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
373 UINT cArgs;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
374 UINT cNamedArgs;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
375 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
376
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
377 struct EXCEPINFO {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
378 WORD wCode;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
379 WORD wReserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
380 BSTR bstrSource;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
381 BSTR bstrDescription;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
382 BSTR bstrHelpFile;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
383 DWORD dwHelpContext;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
384 PVOID pvReserved;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
385 extern (Windows) {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
386 HRESULT function (EXCEPINFO* ) pfnDeferredFillIn;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
387 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
388 SCODE scode;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
389 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
390 alias EXCEPINFO* LPEXCEPINFO;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
391
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
392 enum CALLCONV {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
393 CC_FASTCALL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
394 CC_CDECL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
395 CC_MSCPASCAL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
396 CC_PASCAL=CC_MSCPASCAL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
397 CC_MACPASCAL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
398 CC_STDCALL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
399 CC_FPFASTCALL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
400 CC_SYSCALL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
401 CC_MPWCDECL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
402 CC_MPWPASCAL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
403 CC_MAX=CC_MPWPASCAL
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
404 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
405
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
406 enum FUNCKIND {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
407 FUNC_VIRTUAL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
408 FUNC_PUREVIRTUAL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
409 FUNC_NONVIRTUAL,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
410 FUNC_STATIC,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
411 FUNC_DISPATCH
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
412 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
413
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
414 enum INVOKEKIND {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
415 INVOKE_FUNC = 1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
416 INVOKE_PROPERTYGET = 2,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
417 INVOKE_PROPERTYPUT = 4,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
418 INVOKE_PROPERTYPUTREF = 8
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
419 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
420
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
421 struct FUNCDESC {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
422 MEMBERID memid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
423 SCODE* lprgscode;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
424 ELEMDESC* lprgelemdescParam;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
425 FUNCKIND funckind;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
426 INVOKEKIND invkind;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
427 CALLCONV callconv;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
428 SHORT cParams;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
429 SHORT cParamsOpt;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
430 SHORT oVft;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
431 SHORT cScodes;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
432 ELEMDESC elemdescFunc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
433 WORD wFuncFlags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
434 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
435 alias FUNCDESC* LPFUNCDESC;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
436
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
437 enum VARKIND {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
438 VAR_PERINSTANCE, VAR_STATIC, VAR_CONST, VAR_DISPATCH
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
439 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
440
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
441 struct VARDESC {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
442 MEMBERID memid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
443 LPOLESTR lpstrSchema;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
444 union {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
445 ULONG oInst;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
446 VARIANT* lpvarValue;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
447 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
448 ELEMDESC elemdescVar;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
449 WORD wVarFlags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
450 VARKIND varkind;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
451 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
452 alias VARDESC* LPVARDESC;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
453
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
454 enum TYPEFLAGS {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
455 TYPEFLAG_FAPPOBJECT = 1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
456 TYPEFLAG_FCANCREATE = 2,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
457 TYPEFLAG_FLICENSED = 4,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
458 TYPEFLAG_FPREDECLID = 8,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
459 TYPEFLAG_FHIDDEN = 16,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
460 TYPEFLAG_FCONTROL = 32,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
461 TYPEFLAG_FDUAL = 64,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
462 TYPEFLAG_FNONEXTENSIBLE = 128,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
463 TYPEFLAG_FOLEAUTOMATION = 256,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
464 TYPEFLAG_FRESTRICTED = 512,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
465 TYPEFLAG_FAGGREGATABLE = 1024,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
466 TYPEFLAG_FREPLACEABLE = 2048,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
467 TYPEFLAG_FDISPATCHABLE = 4096,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
468 TYPEFLAG_FREVERSEBIND = 8192
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
469 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
470
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
471 enum FUNCFLAGS {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
472 FUNCFLAG_FRESTRICTED = 1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
473 FUNCFLAG_FSOURCE = 2,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
474 FUNCFLAG_FBINDABLE = 4,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
475 FUNCFLAG_FREQUESTEDIT = 8,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
476 FUNCFLAG_FDISPLAYBIND = 16,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
477 FUNCFLAG_FDEFAULTBIND = 32,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
478 FUNCFLAG_FHIDDEN = 64,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
479 FUNCFLAG_FUSESGETLASTERROR = 128,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
480 FUNCFLAG_FDEFAULTCOLLELEM = 256,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
481 FUNCFLAG_FUIDEFAULT = 512,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
482 FUNCFLAG_FNONBROWSABLE = 1024,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
483 FUNCFLAG_FREPLACEABLE = 2048,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
484 FUNCFLAG_FIMMEDIATEBIND = 4096
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
485 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
486
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
487 enum VARFLAGS {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
488 VARFLAG_FREADONLY = 1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
489 VARFLAG_FSOURCE = 2,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
490 VARFLAG_FBINDABLE = 4,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
491 VARFLAG_FREQUESTEDIT = 8,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
492 VARFLAG_FDISPLAYBIND = 16,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
493 VARFLAG_FDEFAULTBIND = 32,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
494 VARFLAG_FHIDDEN = 64,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
495 VARFLAG_FRESTRICTED = 128,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
496 VARFLAG_FDEFAULTCOLLELEM = 256,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
497 VARFLAG_FUIDEFAULT = 512,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
498 VARFLAG_FNONBROWSABLE = 1024,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
499 VARFLAG_FREPLACEABLE = 2048,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
500 VARFLAG_FIMMEDIATEBIND = 4096
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
501 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
502
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
503 struct CLEANLOCALSTORAGE {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
504 IUnknown* pInterface;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
505 PVOID pStorage;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
506 DWORD flags;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
507 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
508
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
509 struct CUSTDATAITEM {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
510 GUID guid;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
511 VARIANTARG varValue;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
512 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
513 alias CUSTDATAITEM* LPCUSTDATAITEM;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
514
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
515 struct CUSTDATA {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
516 DWORD cCustData;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
517 LPCUSTDATAITEM prgCustData;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
518 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
519 alias CUSTDATA* LPCUSTDATA;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
520
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
521 enum DESCKIND {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
522 DESCKIND_NONE = 0,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
523 DESCKIND_FUNCDESC = DESCKIND_NONE+1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
524 DESCKIND_VARDESC = DESCKIND_FUNCDESC+1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
525 DESCKIND_TYPECOMP = DESCKIND_VARDESC+1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
526 DESCKIND_IMPLICITAPPOBJ = DESCKIND_TYPECOMP+1,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
527 DESCKIND_MAX = DESCKIND_IMPLICITAPPOBJ+1
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
528 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
529
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
530 union BINDPTR {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
531 LPFUNCDESC lpfuncdesc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
532 LPVARDESC lpvardesc;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
533 LPTYPECOMP lptcomp;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
534 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
535 alias BINDPTR* LPBINDPTR;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
536
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
537 interface IDispatch : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
538 HRESULT GetTypeInfoCount(UINT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
539 HRESULT GetTypeInfo(UINT, LCID, LPTYPEINFO*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
540 HRESULT GetIDsOfNames(REFIID, LPOLESTR*, UINT, LCID, DISPID*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
541 HRESULT Invoke(DISPID, REFIID, LCID, WORD, DISPPARAMS*, VARIANT*, EXCEPINFO*, UINT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
542 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
543 alias IDispatch LPDISPATCH;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
544
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
545 interface IEnumVARIANT : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
546 HRESULT Next(ULONG, VARIANT*, ULONG*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
547 HRESULT Skip(ULONG);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
548 HRESULT Reset();
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
549 HRESULT Clone(IEnumVARIANT**);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
550 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
551 alias IEnumVARIANT LPENUMVARIANT;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
552
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
553 interface ITypeComp : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
554 HRESULT Bind(LPOLESTR, ULONG, WORD, LPTYPEINFO*, DESCKIND*, LPBINDPTR);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
555 HRESULT BindType(LPOLESTR, ULONG, LPTYPEINFO*, LPTYPECOMP*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
556 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
557 alias ITypeComp LPTYPECOMP;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
558
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
559 interface ITypeInfo : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
560 HRESULT GetTypeAttr(LPTYPEATTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
561 HRESULT GetTypeComp(LPTYPECOMP*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
562 HRESULT GetFuncDesc(UINT, LPFUNCDESC*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
563 HRESULT GetVarDesc(UINT, LPVARDESC*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
564 HRESULT GetNames(MEMBERID, BSTR*, UINT, UINT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
565 HRESULT GetRefTypeOfImplType(UINT, HREFTYPE*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
566 HRESULT GetImplTypeFlags(UINT, INT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
567 HRESULT GetIDsOfNames(LPOLESTR*, UINT, MEMBERID*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
568 HRESULT Invoke(PVOID, MEMBERID, WORD, DISPPARAMS*, VARIANT*, EXCEPINFO*,
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
569 UINT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
570 HRESULT GetDocumentation(MEMBERID, BSTR*, BSTR*, DWORD*, BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
571 HRESULT GetDllEntry(MEMBERID, INVOKEKIND, BSTR*, BSTR*, WORD*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
572 HRESULT GetRefTypeInfo(HREFTYPE, LPTYPEINFO*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
573 HRESULT AddressOfMember(MEMBERID, INVOKEKIND, PVOID*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
574 HRESULT CreateInstance(LPUNKNOWN, REFIID, PVOID*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
575 HRESULT GetMops(MEMBERID, BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
576 HRESULT GetContainingTypeLib(LPTYPELIB*, UINT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
577 void ReleaseTypeAttr(LPTYPEATTR);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
578 void ReleaseFuncDesc(LPFUNCDESC);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
579 void ReleaseVarDesc(LPVARDESC);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
580 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
581 alias ITypeInfo LPTYPEINFO;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
582
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
583 interface ITypeInfo2 : public ITypeInfo {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
584 HRESULT GetTypeKind(TYPEKIND*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
585 HRESULT GetTypeFlags(ULONG*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
586 HRESULT GetFuncIndexOfMemId(MEMBERID, INVOKEKIND, UINT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
587 HRESULT GetVarIndexOfMemId(MEMBERID, UINT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
588 HRESULT GetCustData(REFGUID, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
589 HRESULT GetFuncCustData(UINT, REFGUID, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
590 HRESULT GetParamCustData(UINT, UINT, REFGUID, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
591 HRESULT GetVarCustData(UINT, REFGUID, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
592 HRESULT GetImplTypeCustData(UINT, REFGUID, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
593 HRESULT GetDocumentation2(MEMBERID, LCID, BSTR*, DWORD*, BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
594 HRESULT GetAllCustData(CUSTDATA*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
595 HRESULT GetAllFuncCustData(UINT, CUSTDATA*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
596 HRESULT GetAllParamCustData(UINT, UINT, CUSTDATA*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
597 HRESULT GetAllVarCustData(UINT, CUSTDATA*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
598 HRESULT GetAllImplTypeCustData(UINT, CUSTDATA*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
599 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
600 alias ITypeInfo2 LPTYPEINFO2;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
601
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
602 interface ITypeLib : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
603 UINT GetTypeInfoCount();
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
604 HRESULT GetTypeInfo(UINT, ITypeInfo**);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
605 HRESULT GetTypeInfoType(UINT, TYPEKIND*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
606 HRESULT GetTypeInfoOfGuid(REFGUID, ITypeInfo**);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
607 HRESULT GetLibAttr(TLIBATTR**);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
608 HRESULT GetTypeComp(ITypeComp*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
609 HRESULT GetDocumentation(INT, BSTR*, BSTR*, DWORD*, BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
610 HRESULT IsName(LPOLESTR, ULONG, BOOL*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
611 HRESULT FindName(LPOLESTR, ULONG, ITypeInfo**, MEMBERID*, USHORT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
612 void ReleaseTLibAttr(TLIBATTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
613 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
614 alias ITypeLib LPTYPELIB;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
615
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
616 interface ITypeLib2 : public ITypeLib {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
617 HRESULT GetCustData(REFGUID, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
618 HRESULT GetLibStatistics(ULONG*, ULONG*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
619 HRESULT GetDocumentation2(INT, LCID, BSTR*, DWORD*, BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
620 HRESULT GetAllCustData(CUSTDATA*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
621 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
622 alias ITypeLib2 LPTYPELIB2;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
623
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
624 interface IErrorInfo : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
625 HRESULT GetGUID(GUID*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
626 HRESULT GetSource(BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
627 HRESULT GetDescription(BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
628 HRESULT GetHelpFile(BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
629 HRESULT GetHelpContext(DWORD*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
630 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
631 alias IErrorInfo LPERRORINFO;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
632
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
633 interface ICreateErrorInfo : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
634 HRESULT SetGUID(REFGUID);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
635 HRESULT SetSource(LPOLESTR);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
636 HRESULT SetDescription(LPOLESTR);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
637 HRESULT SetHelpFile(LPOLESTR);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
638 HRESULT SetHelpContext(DWORD);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
639 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
640 alias ICreateErrorInfo* LPCREATEERRORINFO;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
641
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
642 interface ISupportErrorInfo : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
643 HRESULT InterfaceSupportsErrorInfo(REFIID);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
644 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
645 alias ISupportErrorInfo LPSUPPORTERRORINFO;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
646
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
647 interface IRecordInfo : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
648 HRESULT RecordInit(PVOID);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
649 HRESULT RecordClear(PVOID);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
650 HRESULT RecordCopy(PVOID, PVOID);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
651 HRESULT GetGuid(GUID*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
652 HRESULT GetName(BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
653 HRESULT GetSize(ULONG*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
654 HRESULT GetTypeInfo(ITypeInfo**);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
655 HRESULT GetField(PVOID, LPCOLESTR, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
656 HRESULT GetFieldNoCopy(PVOID, LPCOLESTR, VARIANT*, PVOID*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
657 HRESULT PutField (ULONG, PVOID, LPCOLESTR, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
658 HRESULT PutFieldNoCopy(ULONG, PVOID, LPCOLESTR, VARIANT*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
659 HRESULT GetFieldNames(ULONG*, BSTR*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
660 BOOL IsMatchingType();
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
661 PVOID RecordCreate();
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
662 HRESULT RecordCreateCopy(PVOID, PVOID*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
663 HRESULT RecordDestroy (PVOID);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
664 }
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
665 alias IRecordInfo LPRECORDINFO;
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
666
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
667 interface ITypeMarshal : public IUnknown {
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
668 HRESULT Size(PVOID, DWORD, PVOID, ULONG*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
669 HRESULT Marshal(PVOID, DWORD, PVOID, ULONG, BYTE*, ULONG*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
670 HRESULT Unmarshal(PVOID, DWORD, ULONG, BYTE*, ULONG*);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
671 HRESULT Free(PVOID);
4a9dcbd9e54f -files of 0.13 beta
marton@basel.hu
parents:
diff changeset
672 }