wined3d: Return a failure code if creating the staging texture failed in surface_cpu_...
[wine.git] / include / mimeole.idl
blobdddfc262244bb1e186e17388351a6ef2a8573054
1 /*
2 * Copyright 2007 Robert Shearman for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 import "ocidl.idl";
20 import "objidl.idl";
21 import "propidl.idl";
23 #define DECLARE_HANDLE(name) typedef void *name
25 interface IMimeMessageCallback;
26 interface IMimeEnumAddressTypes;
27 interface IMimeMessageParts;
28 interface IMimeMessageTree;
29 interface IMimeBody;
30 interface IMimeEnumProperties;
32 cpp_quote("DEFINE_GUID(CLSID_IMimeBody, 0xfd853cdb, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
33 cpp_quote("DEFINE_GUID(CLSID_IMimeAllocator, 0xfd853cdd, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
34 cpp_quote("DEFINE_GUID(CLSID_IMimeMessage, 0xfd853ce3, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
35 cpp_quote("DEFINE_GUID(CLSID_IMimeSecurity, 0xfd853cde, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
36 cpp_quote("DEFINE_GUID(CLSID_IVirtualStream, 0xfd853cdf, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
38 cpp_quote("#define MIME_E_REG_CREATE_KEY 0x800cce01")
39 cpp_quote("#define MIME_E_REG_QUERY_INFO 0x800cce02")
40 cpp_quote("#define MIME_E_INVALID_ENCTYPE 0x800cce03")
41 cpp_quote("#define MIME_E_BOUNDARY_MISMATCH 0x800cce04")
42 cpp_quote("#define MIME_E_NOT_FOUND 0x800cce05")
43 cpp_quote("#define MIME_E_NO_DATA 0x800cce05")
44 cpp_quote("#define MIME_E_BUFFER_TOO_SMALL 0x800cce06")
45 cpp_quote("#define MIME_E_INVALID_ITEM_FLAGS 0x800cce07")
46 cpp_quote("#define MIME_E_ONE_LINE_ITEME 0x800cce08")
47 cpp_quote("#define MIME_E_INVALID_HANDLE 0x800cce09")
48 cpp_quote("#define MIME_E_CHARSET_TRANSLATE 0x800cce0a")
49 cpp_quote("#define MIME_E_NOT_INITIALIZED 0x800cce0b")
51 cpp_quote("#define MIME_E_INVALID_CHARSET_TYPE 0x800cce31")
53 cpp_quote("#define MIME_E_INVALID_TEXT_TYPE 0x800cce38")
55 cpp_quote("#define MIME_E_SECURITY_NOOP 0x800cceb1")
56 cpp_quote("#define MIME_S_SECURITY_NOOP 0x000cceb1")
58 cpp_quote("typedef enum tagMIMEPROPID {")
59 cpp_quote(" PID_HDR_NEWSGROUP = 2,")
60 cpp_quote(" PID_HDR_NEWSGROUPS = 3,")
61 cpp_quote(" PID_HDR_REFS = 4,")
62 cpp_quote(" PID_HDR_SUBJECT = 5,")
63 cpp_quote(" PID_HDR_FROM = 6,")
64 cpp_quote(" PID_HDR_MESSAGEID = 7,")
65 cpp_quote(" PID_HDR_RETURNPATH = 8,")
66 cpp_quote(" PID_HDR_RR = 9,")
67 cpp_quote(" PID_HDR_RETRCPTO = 10,")
68 cpp_quote(" PID_HDR_APPARTO = 11,")
69 cpp_quote(" PID_HDR_DATE = 12,")
70 cpp_quote(" PID_HDR_RECEIVED = 13,")
71 cpp_quote(" PID_HDR_REPLYTO = 14,")
72 cpp_quote(" PID_HDR_XMAILER = 15,")
73 cpp_quote(" PID_HDR_BCC = 16,")
74 cpp_quote(" PID_HDR_MIMEVER = 17,")
75 cpp_quote(" PID_HDR_CNTTYPE = 18,")
76 cpp_quote(" PID_HDR_CNTXFER = 19,")
77 cpp_quote(" PID_HDR_CNTID = 20,")
78 cpp_quote(" PID_HDR_CNTDESC = 21,")
79 cpp_quote(" PID_HDR_CNTDISP = 22,")
80 cpp_quote(" PID_HDR_CNTBASE = 23,")
81 cpp_quote(" PID_HDR_CNTLOC = 24,")
82 cpp_quote(" PID_HDR_TO = 25,")
83 cpp_quote(" PID_HDR_PATH = 26,")
84 cpp_quote(" PID_HDR_FOLLOWUPTO = 27,")
85 cpp_quote(" PID_HDR_EXPIRES = 28,")
86 cpp_quote(" PID_HDR_CC = 29,")
87 cpp_quote(" PID_HDR_CONTROL = 30,")
88 cpp_quote(" PID_HDR_DISTRIB = 31,")
89 cpp_quote(" PID_HDR_KEYWORDS = 32,")
90 cpp_quote(" PID_HDR_SUMMARY = 33,")
91 cpp_quote(" PID_HDR_APPROVED = 34,")
92 cpp_quote(" PID_HDR_LINES = 35,")
93 cpp_quote(" PID_HDR_XREF = 36,")
94 cpp_quote(" PID_HDR_ORG = 37,")
95 cpp_quote(" PID_HDR_XNEWSRDR = 38,")
96 cpp_quote(" PID_HDR_XPRI = 39,")
97 cpp_quote(" PID_HDR_XMSPRI = 40,")
98 cpp_quote(" PID_PAR_FILENAME = 41,")
99 cpp_quote(" PID_PAR_BOUNDARY = 42,")
100 cpp_quote(" PID_PAR_CHARSET = 43,")
101 cpp_quote(" PID_PAR_NAME = 44,")
102 cpp_quote(" PID_ATT_FILENAME = 45,")
103 cpp_quote(" PID_ATT_GENFNAME = 46,")
104 cpp_quote(" PID_ATT_PRITYPE = 47,")
105 cpp_quote(" PID_ATT_SUBTYPE = 48,")
106 cpp_quote(" PID_ATT_NORMSUBJ = 49,")
107 cpp_quote(" PID_ATT_ILLEGAL = 50,")
108 cpp_quote(" PID_ATT_RENDERED = 51,")
109 cpp_quote(" PID_ATT_SENTTIME = 52,")
110 cpp_quote(" PID_ATT_RECVTIME = 53,")
111 cpp_quote(" PID_ATT_PRIORITY = 54,")
112 cpp_quote(" PID_HDR_COMMENT = 55,")
113 cpp_quote(" PID_HDR_ENCODING = 56,")
114 cpp_quote(" PID_HDR_ENCRYPTED = 57,")
115 cpp_quote(" PID_HDR_OFFSETS = 58,")
116 cpp_quote(" PID_HDR_XUNSENT = 59,")
117 cpp_quote(" PID_HDR_ARTICLEID = 60,")
118 cpp_quote(" PID_HDR_SENDER = 61,")
119 cpp_quote(" PID_ATT_SERVER = 62,")
120 cpp_quote(" PID_ATT_ACCOUNT = 63,")
121 cpp_quote(" PID_ATT_UIDL = 64,")
122 cpp_quote(" PID_ATT_STOREMSGID = 65,")
123 cpp_quote(" PID_ATT_USERNAME = 66,")
124 cpp_quote(" PID_ATT_FORWARDTO = 67,")
125 cpp_quote(" PID_ATT_STOREFOLDERID = 68,")
126 cpp_quote(" PID_ATT_GHOSTED = 69,")
127 cpp_quote(" PID_ATT_UNCACHEDSIZE = 70,")
128 cpp_quote(" PID_ATT_COMBINED = 71,")
129 cpp_quote(" PID_ATT_AUTOINLINED = 72,")
130 cpp_quote(" PID_HDR_DISP_NOTIFICATION_TO = 73,")
131 cpp_quote(" PID_PAR_REPLYTYPE = 74,")
132 cpp_quote(" PID_PAR_FORMAT = 75,")
133 cpp_quote(" PID_ATT_FORMAT = 76,")
134 cpp_quote(" PID_HDR_INREPLYTO = 77,")
135 cpp_quote(" PID_ATT_ACCOUNTNAME = 78,")
136 cpp_quote(" PID_LAST = 79,")
137 cpp_quote("} MIMEPROPID;")
139 cpp_quote("#define TYPEDID_MASK ((ULONG)0xffff)")
140 cpp_quote("#define TYPEDID_TYPE(t) ((VARTYPE)((t) & TYPEDID_MASK))")
142 cpp_quote("#define OID_HIDE_TNEF_ATTACHMENTS (0x000e0000 | VT_BOOL)")
143 cpp_quote("#define OID_SECURITY_TYPE (0x00180000 | VT_UI4)")
144 cpp_quote("#define OID_SECURITY_HWND_OWNER (0x00320000 | VT_UI4)")
145 cpp_quote("#define OID_HEADER_RELOAD_TYPE (0x00370000 | VT_UI4)")
146 cpp_quote("#define OID_SHOW_MACBINARY (0x00390000 | VT_BOOL)")
150 uuid(e4b28371-83b0-11d0-8259-00c04fd85ab4),
151 version(1.0)
153 library MIMEOLE
155 importlib("stdole2.tlb");
157 DECLARE_HANDLE(HCHARSET);
158 DECLARE_HANDLE(HBODY);
159 DECLARE_HANDLE(HHEADERROW);
161 typedef HCHARSET *LPHCHARSET;
162 typedef HBODY *LPHBODY;
163 typedef HHEADERROW *LPHHEADERROW;
164 typedef DWORD TYPEDID;
165 typedef const PROPVARIANT *LPCPROPVARIANT;
166 typedef const BLOB *LPCBLOB;
168 typedef enum tagRELOADTYPE
170 RELOAD_HEADER_NONE,
171 RELOAD_HEADER_RESET,
172 RELOAD_HEADER_APPEND,
173 RELOAD_HEADER_REPLACE,
174 } RELOADTYPE;
176 typedef enum tagMIMESAVETYPE
178 SAVE_RFC822,
179 SAVE_RFC1521,
180 } MIMESAVETYPE;
182 typedef enum tagCSETAPPLYTYPE
184 CSET_APPLY_UNTAGGED,
185 CSET_APPLY_ALL,
186 CSET_APPLY_TAG_ALL,
187 } CSETAPPLYTYPE;
189 typedef enum tagENCODINGTYPE
191 IET_BINARY,
192 IET_BASE64,
193 IET_UUENCODE,
194 IET_QP,
195 IET_7BIT,
196 IET_8BIT,
197 IET_INETCSET,
198 IET_UNICODE,
199 IET_RFC1522,
200 IET_ENCODED,
201 IET_CURRENT,
202 IET_UNKNOWN,
203 IET_BINHEX40,
204 IET_LAST
205 } ENCODINGTYPE;
207 const SHORT IET_DECODED = IET_BINARY;
209 const SHORT CCHMAX_HEADER_LINE = 1000;
212 uuid(c5588349-7f86-11d0-8252-00c04fd85ab4),
213 object
215 interface IMimeInternational : IUnknown
217 typedef [unique] IMimeInternational *LPMIMEINTERNATIONAL;
218 typedef DWORD CODEPAGEID;
220 const CODEPAGEID CP_USASCII = 1252;
221 const CODEPAGEID CP_UNICODE = 1200;
222 const CODEPAGEID CP_JAUTODETECT = 50932;
223 const CODEPAGEID CP_KAUTODETECT = 50949;
224 const CODEPAGEID CP_ISO2022JPESC = 50221;
225 const CODEPAGEID CP_ISO2022JPSIO = 50222;
227 const SHORT CCHMAX_CSET_NAME = 128;
228 const SHORT CCHMAX_LANG_NAME = 128;
229 const SHORT CCHMAX_FACE_NAME = 128;
231 typedef struct tagINETCSETINFO
233 CHAR szName[CCHMAX_CSET_NAME];
234 HCHARSET hCharset;
235 CODEPAGEID cpiWindows;
236 CODEPAGEID cpiInternet;
237 DWORD dwReserved1;
238 } INETCSETINFO, *LPINETCSETINFO;
240 typedef enum tagINETLANGMASK
242 ILM_FAMILY = 0x01,
243 ILM_NAME = 0x02,
244 ILM_BODYCSET = 0x04,
245 ILM_HEADERCSET = 0x08,
246 ILM_WEBCSET = 0x10,
247 ILM_FIXEDFONT = 0x20,
248 ILM_VARIABLEFONT = 0x40,
249 } INETLANGMASK;
251 typedef struct tagCODEPAGEINFO
253 DWORD dwMask;
254 CODEPAGEID cpiCodePage;
255 BOOL fIsValidCodePage;
256 ULONG ulMaxCharSize;
257 BOOL fInternetCP;
258 CODEPAGEID cpiFamily;
259 CHAR szName[CCHMAX_LANG_NAME];
260 CHAR szBodyCset[CCHMAX_CSET_NAME];
261 CHAR szHeaderCset[CCHMAX_CSET_NAME];
262 CHAR szWebCset[CCHMAX_CSET_NAME];
263 CHAR szFixedFont[CCHMAX_FACE_NAME];
264 CHAR szVariableFont[CCHMAX_FACE_NAME];
265 ENCODINGTYPE ietNewsDefault;
266 ENCODINGTYPE ietMailDefault;
267 DWORD dwReserved1;
268 } CODEPAGEINFO, *LPCODEPAGEINFO;
270 typedef struct tagRFC1522INFO
272 BOOL fRfc1522Allowed;
273 BOOL fRfc1522Used;
274 BOOL fAllow8bit;
275 HCHARSET hRfc1522Cset;
276 } RFC1522INFO, *LPRFC1522INFO;
278 typedef enum tagCHARSETTYPE
280 CHARSET_BODY,
281 CHARSET_HEADER,
282 CHARSET_WEB,
283 } CHARSETTYPE;
286 HRESULT SetDefaultCharset(
287 [in] HCHARSET hCharset);
288 HRESULT GetDefaultCharset(
289 [out] LPHCHARSET phCharset);
290 HRESULT GetCodePageCharset(
291 [in] CODEPAGEID cpiCodePage,
292 [in] CHARSETTYPE ctCsetType,
293 [out] LPHCHARSET phCharset);
294 HRESULT FindCharset(
295 [in] LPCSTR pszCharset,
296 [out] LPHCHARSET phCharset);
297 HRESULT GetCharsetInfo(
298 [in] HCHARSET hCharset,
299 [in, out] LPINETCSETINFO pCsetInfo);
300 HRESULT GetCodePageInfo(
301 [in] CODEPAGEID cpiCodePage,
302 [in, out] LPCODEPAGEINFO pCodePageInfo);
303 HRESULT CanConvertCodePages(
304 [in] CODEPAGEID cpiSource,
305 [in] CODEPAGEID cpiDest);
306 HRESULT DecodeHeader(
307 [in] HCHARSET hCharset,
308 [in] LPCSTR pszData,
309 [in, out] LPPROPVARIANT pDecoded,
310 [in, out] LPRFC1522INFO pRfc1522Info);
311 HRESULT EncodeHeader(
312 [in] HCHARSET hCharset,
313 [in] LPPROPVARIANT pData,
314 [out] LPSTR *ppszEncoded,
315 [in, out] LPRFC1522INFO pRfc1522Info);
316 HRESULT ConvertBuffer(
317 [in] CODEPAGEID cpiSource,
318 [in] CODEPAGEID cpiDest,
319 [in] LPBLOB pIn,
320 [in, out] LPBLOB pOut,
321 [out] ULONG *pcbRead);
322 HRESULT ConvertString(
323 [in] CODEPAGEID cpiSource,
324 [in] CODEPAGEID cpiDest,
325 [in] LPPROPVARIANT pIn,
326 [in, out] LPPROPVARIANT pOut);
327 HRESULT MLANG_ConvertInetReset(void);
328 HRESULT MLANG_ConvertInetString(
329 [in] CODEPAGEID cpiSource,
330 [in] CODEPAGEID cpiDest,
331 [in] LPCSTR pSource,
332 [in] int *pnSizeOfSource,
333 [in,out,unique] LPSTR pDestination,
334 [in] int *pnDstSize);
335 HRESULT Rfc1522Decode(
336 [in] LPCSTR pszValue,
337 [in,ref] LPSTR pszCharset,
338 [in] ULONG cchmax,
339 [out] LPSTR *ppszDecoded);
340 HRESULT Rfc1522Encode(
341 [in] LPCSTR pszValue,
342 [in] HCHARSET hCharset,
343 [out] LPSTR *ppszEncoded);
347 uuid(c5588353-7f86-11d0-8252-00c04fd85ab4),
348 object
350 interface IMimeSecurity : IUnknown
352 typedef [unique] IMimeSecurity *LPMIMESECURITY;
354 cpp_quote("#ifdef __WINE_WINCRYPT_H")
355 cpp_quote("typedef PCCERT_CONTEXT PCX509CERT;")
356 cpp_quote("#else")
357 typedef const void *PCX509CERT;
358 typedef void *HCERTSTORE;
359 cpp_quote("#endif")
361 typedef BLOB THUMBBLOB;
362 typedef void *HCAPICERTSTORE;
364 cpp_quote("#define MST_NONE 0x00000000")
365 cpp_quote("#define MST_THIS_SIGN 0x00000001")
366 cpp_quote("#define MST_THIS_ENCRYPT 0x00000002")
367 cpp_quote("#define MST_BLOB_FLAG 0x00000004")
368 cpp_quote("#define MST_THIS_BLOBSIGN (MST_BLOB_FLAG | MST_THIS_SIGN)")
369 cpp_quote("#define MST_CHILD_SIGN 0x00000100")
370 cpp_quote("#define MST_CHILD_ENCRYPT 0x00000200")
371 cpp_quote("#define MST_SUBMSG_SIGN 0x00001000")
372 cpp_quote("#define MST_SUBMSG_ENCRYPT 0x00002000")
373 cpp_quote("#define MST_RECEIPT_REQUEST 0x00010000")
374 cpp_quote("#define MST_CLASS_SMIME_V1 0x00000000")
375 cpp_quote("#define MST_CLASS_PGP 0x01000000")
377 typedef enum tagCERTSTATE
379 CERTIFICATE_OK,
380 CERTIFICATE_NOT_PRESENT,
381 CERTIFICATE_EXPIRED,
382 CERTIFICATE_CHAIN_TOO_LONG,
383 CERTIFICATE_MISSING_ISSUER,
384 CERTIFICATE_CRL_LISTED,
385 CERTIFICATE_NOT_TRUSTED,
386 CERTIFICATE_INVALID,
387 CERTIFICATE_ERROR,
388 CERTIFICATE_NOPRINT,
389 CERTIFICATE_UNKNOWN
390 } CERTSTATE;
392 typedef enum tagCERTNAMETYPE
394 SIMPLE,
395 OID,
396 X500,
397 } CERTNAMETYPE;
399 typedef enum tagCERTDATAID
401 CDID_EMAIL,
402 CDID_MAX
403 } CERTDATAID;
405 typedef struct tagX509CERTRESULT
407 DWORD cEntries;
408 CERTSTATE *rgcs;
409 PCX509CERT *rgpCert;
410 } X509CERTRESULT, *PX509CERTRESULT;
411 typedef const X509CERTRESULT *PCX509CERTRESULT;
413 HRESULT InitNew(void);
415 HRESULT CheckInit(void);
417 HRESULT EncodeMessage(
418 [in] IMimeMessageTree */*const*/ pTree,
419 [in] DWORD dwFlags);
421 HRESULT EncodeBody(
422 [in] IMimeMessageTree */*const*/ pTree,
423 [in] HBODY hEncodeRoot,
424 [in] DWORD dwFlags);
426 HRESULT DecodeMessage(
427 [in] IMimeMessageTree */*const*/ pTree,
428 [in] DWORD dwFlags);
430 HRESULT DecodeBody(
431 [in] IMimeMessageTree */*const*/ pTree,
432 [in] HBODY hDecodeRoot,
433 [in] DWORD dwFlags);
435 HRESULT EnumCertificates(
436 [in] HCAPICERTSTORE hc,
437 [in] DWORD dwUsage,
438 [in] PCX509CERT pPrev,
439 [out] PCX509CERT *ppCert);
441 HRESULT GetCertificateName(
442 [in] const PCX509CERT pX509Cert,
443 [in] const CERTNAMETYPE cn,
444 [out] LPSTR *ppszName);
446 HRESULT GetMessageType(
447 [in] const HWND hwndParent,
448 [in] IMimeBody */*const*/ pBody,
449 [out] DWORD */*const*/ pdwSecType);
451 HRESULT GetCertData(
452 [in] const PCX509CERT pX509Cert,
453 [in] const CERTDATAID dataid,
454 [out, ref] LPPROPVARIANT pValue);
458 uuid(fd853cd1-7f86-11d0-8252-00c04fd85ab4),
459 object
461 interface IMimeHeaderTable : IPersistStream
463 /* FIXME: fill this in */
467 uuid(fd853cec-7f86-11d0-8252-00c04fd85ab4),
468 object
470 interface IMimePropertySchema : IUnknown
472 typedef [unique] IMimePropertySchema *LPMIMEPROPERTYSCHEMA;
474 typedef enum tagMIMEPROPFLAGS
476 MPF_INETCSET = 0x01,
477 MPF_RFC1522 = 0x02,
478 MPF_ADDRESS = 0x04,
479 MPF_HASPARAMS = 0x08,
480 MPF_MIME = 0x10,
481 MPF_READONLY = 0x20
482 } MIMEPROPFLAGS;
484 HRESULT RegisterProperty(
485 [in] const char *name,
486 [in] DWORD flags,
487 [in] DWORD rownumber,
488 [in] VARTYPE vtdefault,
489 [out] DWORD *propid);
491 HRESULT ModifyProperty(
492 [in] const char *name,
493 [in] DWORD flags,
494 [in] DWORD rownumber,
495 [in] VARTYPE vtdefault);
497 HRESULT GetPropertyId(
498 [in] const char *name,
499 [out] DWORD *propid);
501 HRESULT GetPropertyName(
502 [in] DWORD propid,
503 [out] char **name);
505 HRESULT RegisterAddressType(
506 [in] const char *name,
507 [out] DWORD *adrtype);
511 uuid(fd853cd3-7f86-11d0-8252-00c04fd85ab4),
512 object
514 interface IMimePropertySet : IPersistStreamInit
516 typedef [unique] IMimePropertySet *LPMIMEPROPERTYSET;
518 cpp_quote("#define PDF_ENCODED 0x00000001")
519 cpp_quote("#define PDF_NAMEINDATA 0x00000002")
520 cpp_quote("#define PDF_HEADERFORMAT (0x00000004 | PDF_ENCODED)")
521 cpp_quote("#define PDF_NOCOMMENTS 0x00000008")
522 cpp_quote("#define PDF_SAVENOENCODE 0x00000010")
523 cpp_quote("#define PDF_VECTOR 0x00000020")
525 typedef struct tagMIMEPARAMINFO
527 LPSTR pszName;
528 LPSTR pszData;
529 } MIMEPARAMINFO, *LPMIMEPARAMINFO;
531 typedef enum tagPROPINFOMASK
533 PIM_CHARSET = 0x01,
534 PIM_ENCODINGTYPE = 0x02,
535 PIM_ROWNUMBER = 0x04,
536 PIM_FLAGS = 0x08,
537 PIM_PROPID = 0x10,
538 PIM_VALUES = 0x20,
539 PIM_VTDEFAULT = 0x40,
540 PIM_VTCURRENT = 0x80
541 } PROPINFOMASK;
543 typedef struct tagMIMEPROPINFO
545 DWORD dwMask;
546 HCHARSET hCharset;
547 ENCODINGTYPE ietEncoding;
548 DWORD dwRowNumber;
549 DWORD dwFlags;
550 DWORD dwPropId;
551 DWORD cValues;
552 VARTYPE vtDefault;
553 VARTYPE vtCurrent;
554 } MIMEPROPINFO, *LPMIMEPROPINFO;
555 typedef const MIMEPROPINFO *LPCMIMEPROPINFO;
557 HRESULT GetPropInfo(
558 [in] LPCSTR pszName,
559 [in,out] LPMIMEPROPINFO pInfo);
561 HRESULT SetPropInfo(
562 [in] LPCSTR pszName,
563 [in] LPCMIMEPROPINFO pInfo);
565 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
566 cpp_quote("#undef GetProp")
567 cpp_quote("#undef SetProp")
568 cpp_quote("#undef EnumProps")
569 cpp_quote("#endif")
570 HRESULT GetProp(
571 [in] LPCSTR pszName,
572 [in] DWORD dwFlags,
573 [in,out] LPPROPVARIANT pValue);
575 HRESULT SetProp(
576 [in] LPCSTR pszName,
577 [in] DWORD dwFlags,
578 [in] LPCPROPVARIANT pValue);
580 HRESULT AppendProp(
581 [in] LPCSTR pszName,
582 [in] DWORD dwFlags,
583 [in] LPPROPVARIANT pValue);
585 HRESULT DeleteProp(
586 [in] LPCSTR pszName);
588 HRESULT CopyProps(
589 [in] ULONG cNames,
590 [in,unique] LPCSTR *prgszName,
591 [in] IMimePropertySet *pPropertySet);
593 HRESULT MoveProps(
594 [in] ULONG cNames,
595 [in] LPCSTR *prgszName,
596 [in] IMimePropertySet *pPropertySet);
598 HRESULT DeleteExcept(
599 [in] ULONG cNames,
600 [in] LPCSTR *prgszName);
602 HRESULT QueryProp(
603 [in] LPCSTR pszName,
604 [in] LPCSTR pszCriteria,
605 [in] boolean fSubString,
606 [in] boolean fCaseSensitive);
608 HRESULT GetCharset(
609 [out] LPHCHARSET phCharset);
611 HRESULT SetCharset(
612 [in] HCHARSET hCharset,
613 [in] CSETAPPLYTYPE applytype);
615 HRESULT GetParameters(
616 [in] LPCSTR pszName,
617 [out] ULONG *pcParams,
618 [out] LPMIMEPARAMINFO *pprgParam);
620 HRESULT IsContentType(
621 [in] LPCSTR pszPriType,
622 [in,unique] LPCSTR pszSubType);
624 HRESULT BindToObject(
625 [in] REFIID riid,
626 [out,iid_is(riid)] void **ppvObject);
628 HRESULT Clone(
629 [out] IMimePropertySet **ppPropertySet);
631 HRESULT SetOption(
632 [in] const TYPEDID oid,
633 [in] LPCPROPVARIANT pValue);
635 HRESULT GetOption(
636 [in] const TYPEDID oid,
637 [in,out] LPPROPVARIANT pValue);
639 cpp_quote("#define EPF_NONAME 0x00000001")
641 HRESULT EnumProps(
642 [in] DWORD dwFlags,
643 [out] IMimeEnumProperties **ppEnum);
648 uuid(c558834a-7f86-11d0-8252-00c04fd85ab4),
649 object
651 interface IMimeAddressTable : IUnknown
653 typedef [unique] IMimeAddressTable *LPMIMEADDRESSTABLE;
655 DECLARE_HANDLE(HADDRESS);
656 typedef HADDRESS *LPHADDRESS;
657 typedef DWORD IADDRESSTYPE;
659 typedef enum tagADDRESSFORMAT
661 AFT_DISPLAY_FRIENDLY,
662 AFT_DISPLAY_EMAIL,
663 AFT_DISPLAY_BOTH,
664 AFT_RFC822_DECODED,
665 AFT_RFC822_ENCODED,
666 AFT_RFC822_TRANSMIT,
667 } ADDRESSFORMAT;
669 typedef struct tagADDRESSPROPS
671 DWORD dwProps;
672 HADDRESS hAddress;
673 ENCODINGTYPE ietFriendly;
674 HCHARSET hCharset;
675 DWORD dwAdrType;
676 LPSTR pszFriendly;
677 LPWSTR pwszReserved;
678 LPSTR pszEmail;
679 CERTSTATE certstate;
680 THUMBBLOB tbSigning;
681 THUMBBLOB tbEncryption;
682 DWORD dwCookie;
683 DWORD dwReserved1;
684 DWORD dwReserved2;
685 } ADDRESSPROPS, *LPADDRESSPROPS;
687 typedef struct tagADDRESSLIST
689 ULONG cAdrs;
690 LPADDRESSPROPS prgAdr;
691 } ADDRESSLIST, *LPADDRESSLIST;
693 /* FIXME: fill this in */
697 uuid(ee519f11-851a-11d0-8252-00c04fd85ab4),
698 object
700 interface IMimeWebDocument : IUnknown
702 /* FIXME: fill this in */
706 uuid(c558834c-7f86-11d0-8252-00c04fd85ab4),
707 object
709 interface IMimeBody : IMimePropertySet
711 typedef [unique] IMimeBody *LPMIMEBODY;
713 typedef enum tagIMSGBODYTYPE
715 IBT_SECURE,
716 IBT_ATTACHMENT,
717 IBT_EMPTY,
718 IBT_CSETTAGGED,
719 IBT_AUTOATTACH,
720 } IMSGBODYTYPE;
722 typedef struct tagBODYOFFSETS
724 DWORD cbBoundaryStart;
725 DWORD cbHeaderStart;
726 DWORD cbBodyStart;
727 DWORD cbBodyEnd;
728 } BODYOFFSETS, *LPBODYOFFSETS;
730 typedef struct tagTRANSMITINFO
732 ENCODINGTYPE ietCurrent;
733 ENCODINGTYPE ietXmitMime;
734 ENCODINGTYPE ietXmit822;
735 ULONG cbLongestLine;
736 ULONG cExtended;
737 ULONG ulPercentExt;
738 ULONG cbSize;
739 ULONG cLines;
740 } TRANSMITINFO, *LPTRANSMITINFO;
742 HRESULT IsType(
743 [in] IMSGBODYTYPE bodytype);
745 HRESULT SetDisplayName(
746 [in] LPCSTR pszDisplay);
748 HRESULT GetDisplayName(
749 [out] LPSTR *ppszDisplay);
751 HRESULT GetOffsets(
752 [out] LPBODYOFFSETS pOffsets);
754 HRESULT GetCurrentEncoding(
755 [out] ENCODINGTYPE *pietEncoding);
757 HRESULT SetCurrentEncoding(
758 [in] ENCODINGTYPE ietEncoding);
760 HRESULT GetEstimatedSize(
761 [in] ENCODINGTYPE ietEncoding,
762 [out] ULONG *pcbSize);
764 HRESULT GetDataHere(
765 [in] ENCODINGTYPE ietEncoding,
766 [in] IStream *pStream);
768 HRESULT GetData(
769 [in] ENCODINGTYPE ietEncoding,
770 [out] IStream **ppStream);
772 HRESULT SetData(
773 [in] ENCODINGTYPE ietEncoding,
774 [in,unique] LPCSTR pszPriType,
775 [in,unique] LPCSTR pszSubType,
776 [in] REFIID riid,
777 [in,iid_is(riid)] LPVOID pvObject);
779 HRESULT EmptyData(void);
781 HRESULT CopyTo(
782 [in] IMimeBody *pBody);
784 HRESULT GetTransmitInfo(
785 [in,out] LPTRANSMITINFO pTransmitInfo);
787 HRESULT SaveToFile(
788 [in] ENCODINGTYPE ietEncoding,
789 [in] LPCSTR pszFilePath);
791 HRESULT GetHandle(
792 [out] LPHBODY phBody);
797 uuid(fd853cd4-7f86-11d0-8252-00c04fd85ab4),
798 object
800 interface IMimeMessageTree : IPersistStreamInit
802 typedef [unique] IMimeMessageTree *LPMIMEMESSAGETREE;
804 const HBODY HBODY_ROOT = (HBODY)-1;
806 typedef enum tagBODYLOCATION
808 IBL_ROOT,
809 IBL_PARENT,
810 IBL_FIRST,
811 IBL_LAST,
812 IBL_NEXT,
813 IBL_PREVIOUS,
814 } BODYLOCATION;
816 typedef struct tagFINDBODY
818 LPSTR pszPriType;
819 LPSTR pszSubType;
820 DWORD dwReserved;
821 } FINDBODY, *LPFINDBODY;
823 HRESULT GetMessageSource(
824 [out] IStream **ppStream,
825 [in] DWORD dwFlags);
827 HRESULT GetMessageSize(
828 [out] ULONG *pcbSize,
829 [in] DWORD dwFlags);
831 HRESULT LoadOffsetTable(
832 [in] IStream *pStream);
834 HRESULT SaveOffsetTable(
835 [in] IStream *pStream,
836 [in] DWORD dwFlags);
838 HRESULT GetFlags(
839 [out] DWORD *pdwFlags);
841 HRESULT Commit(
842 [in] DWORD dwFlags);
844 HRESULT HandsOffStorage();
846 HRESULT BindToObject(
847 [in] const HBODY hBody,
848 [in] REFIID riid,
849 [out, iid_is(riid)] void **ppvObject);
851 HRESULT SaveBody(
852 [in] HBODY hBody,
853 [in] DWORD dwFlags,
854 [in] IStream *pStream);
856 HRESULT InsertBody(
857 [in] BODYLOCATION location,
858 [in] HBODY hPivot,
859 [out] LPHBODY phBody);
861 HRESULT GetBody(
862 [in] BODYLOCATION location,
863 [in] HBODY hPivot,
864 [out] LPHBODY phBody);
866 HRESULT DeleteBody(
867 [in] HBODY hBody,
868 [in] DWORD dwFlags);
870 HRESULT MoveBody(
871 [in] HBODY hBody,
872 [in] BODYLOCATION location);
874 HRESULT CountBodies(
875 [in] HBODY hParent,
876 [in] boolean fRecurse,
877 [out] ULONG *pcBodies);
879 HRESULT FindFirst(
880 [in, out] LPFINDBODY pFindBody,
881 [out] LPHBODY phBody);
883 HRESULT FindNext(
884 [in, out] LPFINDBODY pFindBody,
885 [out] LPHBODY phBody);
887 HRESULT ResolveURL(
888 [in] HBODY hRelated,
889 [in] LPCSTR pszBase,
890 [in] LPCSTR pszURL,
891 [in] DWORD dwFlags,
892 [out] LPHBODY phBody);
894 HRESULT ToMultipart(
895 [in] HBODY hBody,
896 [in] LPCSTR pszSubType,
897 [out] LPHBODY phMultipart);
899 HRESULT GetBodyOffsets(
900 [in] HBODY hBody,
901 [in, out] LPBODYOFFSETS pOffsets);
903 HRESULT GetCharset(
904 [out] LPHCHARSET phCharset);
906 HRESULT SetCharset(
907 [in] HCHARSET hCharset,
908 [in] CSETAPPLYTYPE applytype);
910 HRESULT IsBodyType(
911 [in] HBODY hBody,
912 [in] IMSGBODYTYPE bodytype);
914 HRESULT IsContentType(
915 [in] HBODY hBody,
916 [in] LPCSTR pszPriType,
917 [in] LPCSTR pszSubType);
919 HRESULT QueryBodyProp(
920 [in] HBODY hBody,
921 [in] LPCSTR pszName,
922 [in] LPCSTR pszCriteria,
923 [in] boolean fSubString,
924 [in] boolean fCaseSensitive);
926 HRESULT GetBodyProp(
927 [in] HBODY hBody,
928 [in] LPCSTR pszName,
929 [in] DWORD dwFlags,
930 [in, out] LPPROPVARIANT pValue);
932 HRESULT SetBodyProp(
933 [in] HBODY hBody,
934 [in] LPCSTR pszName,
935 [in] DWORD dwFlags,
936 [in] LPCPROPVARIANT pValue);
938 HRESULT DeleteBodyProp(
939 [in] HBODY hBody,
940 [in] LPCSTR pszName);
942 HRESULT SetOption(
943 [in] const TYPEDID oid,
944 [in] LPCPROPVARIANT pValue);
946 HRESULT GetOption(
947 [in] const TYPEDID oid,
948 [in, out] LPPROPVARIANT pValue);
952 uuid(fd853cd5-7f86-11d0-8252-00c04fd85ab4),
953 object
955 interface IMimeMessage : IMimeMessageTree
957 typedef [unique] IMimeMessage *LPMIMEMESSAGE;
959 typedef DWORD TEXTTYPE;
961 typedef enum tagIMSGFLAGS
963 IMF_ATTACHMENTS = 0x00000001,
964 IMF_MULTIPART = 0x00000002,
965 IMF_SUBMULTIPART = 0x00000004,
966 IMF_MIME = 0x00000008,
967 IMF_HTML = 0x00000010,
968 IMF_PLAIN = 0x00000020,
969 IMF_PARTIAL = 0x00000040,
970 IMF_SIGNED = 0x00000080,
971 IMF_ENCRYPTED = 0x00000100,
972 IMF_TNEF = 0x00000200,
973 IMF_MHTML = 0x00000400,
974 IMF_SECURE = 0x00000800,
975 IMF_TEXT = 0x00001000,
976 IMF_CSETTAGGED = 0x00002000,
977 IMF_NEWS = 0x00004000,
978 IMF_VOICEMAIL = 0x00008000,
979 IMF_HASVCARD = 0x00010000,
980 IMF_RFC1154 = 0x00020000,
981 } IMSGFLAGS;
983 typedef enum tagIMSGPRIORITY
985 IMSG_PRI_LOW = 5,
986 IMSG_PRI_NORMAL = 3,
987 IMSG_PRI_HIGH = 1,
988 } IMSGPRIORITY;
990 cpp_quote("#define WPF_HTML 0x00000001")
991 cpp_quote("#define WPF_AUTOINLINE 0x00000002")
992 cpp_quote("#define WPF_SLIDESHOW 0x00000004")
993 cpp_quote("#define WPF_ATTACHLINKS 0x00000008")
994 cpp_quote("#define WPF_IMAGESONLY 0x00000010")
995 cpp_quote("#define WPF_NOMETACHARSET 0x00000020")
997 typedef struct tagWEPAGEOPTIONS
999 DWORD cbSize;
1000 DWORD dwFlags;
1001 DWORD dwDelay;
1002 WCHAR wchQuote;
1003 } WEBPAGEOPTIONS, *LPWEBPAGEOPTIONS;
1005 cpp_quote("#define TXT_PLAIN 1")
1006 cpp_quote("#define TXT_HTML 2")
1008 HRESULT CreateWebPage(
1009 [in] IStream *pRootStm,
1010 [in] LPWEBPAGEOPTIONS pOptions,
1011 [in] IMimeMessageCallback *pCallback,
1012 [out] IMoniker **ppMoniker);
1014 HRESULT GetProp(
1015 [in] LPCSTR pszName,
1016 [in] DWORD dwFlags,
1017 [in,out] LPPROPVARIANT pValue);
1019 HRESULT SetProp(
1020 [in] LPCSTR pszName,
1021 [in] DWORD dwFlags,
1022 [in] LPCPROPVARIANT pValue);
1024 HRESULT DeleteProp(
1025 [in] LPCSTR pszName);
1027 HRESULT QueryProp(
1028 [in] LPCSTR pszName,
1029 [in] LPCSTR pszCriteria,
1030 [in] boolean fSubString,
1031 [in] boolean fCaseSensitive);
1033 HRESULT GetTextBody(
1034 [in] DWORD dwTxtType,
1035 [in] ENCODINGTYPE ietEncoding,
1036 [out] IStream **pStream,
1037 [out] LPHBODY phBody);
1039 HRESULT SetTextBody(
1040 [in] DWORD dwTxtType,
1041 [in] ENCODINGTYPE ietEncoding,
1042 [in] HBODY hAlternative,
1043 [in] IStream *pStream,
1044 [out] LPHBODY phBody);
1046 HRESULT AttachObject(
1047 [in] REFIID riid,
1048 [in, iid_is(riid)] void *pvObject,
1049 [out] LPHBODY phBody);
1051 HRESULT AttachFile(
1052 [in] LPCSTR pszFilePath,
1053 [in] IStream *pstmFile,
1054 [out] LPHBODY phBody);
1056 HRESULT AttachURL(
1057 [in] LPCSTR pszBase,
1058 [in] LPCSTR pszURL,
1059 [in] DWORD dwFlags,
1060 [in] IStream *pstmURL,
1061 [out] LPSTR *ppszCIDURL,
1062 [out] LPHBODY phBody);
1064 HRESULT GetAttachments(
1065 [out] ULONG *pcAttach,
1066 [out] LPHBODY *pprghAttach);
1068 HRESULT GetAddressTable(
1069 [out] IMimeAddressTable **ppTable);
1071 HRESULT GetSender(
1072 [in, out] LPADDRESSPROPS pAddress);
1074 HRESULT GetAddressTypes(
1075 [in] DWORD dwAdrTypes,
1076 [in] DWORD dwProps,
1077 [in, out] LPADDRESSLIST pList);
1079 HRESULT GetAddressFormat(
1080 [in] DWORD dwAdrTypes,
1081 [in] ADDRESSFORMAT format,
1082 [out] LPSTR *ppszFormat);
1084 HRESULT EnumAddressTypes(
1085 [in] DWORD dwAdrTypes,
1086 [in] DWORD dwProps,
1087 [out] IMimeEnumAddressTypes **ppEnum);
1089 HRESULT SplitMessage(
1090 [in] ULONG cbMaxPart,
1091 [out] IMimeMessageParts **ppParts);
1093 HRESULT GetRootMoniker(
1094 [out] IMoniker **ppMoniker);
1098 uuid(761aa741-7bda-11d1-8aa9-00c04fb951f3),
1099 object
1101 interface IMimeMessageCallback : IUnknown
1103 HRESULT OnWebPageSplitter(
1104 [in] DWORD cInlined,
1105 [in] IStream *ppStream);
1109 uuid(de4ad8da-555f-11d1-8dd0-00c04fb951f9),
1110 object
1112 interface IPersistMime : IPersist
1114 /* FIXME: fill this in */
1118 uuid(c558834f-7f86-11d0-8252-00c04fd85ab4),
1119 object
1121 interface IMimeMessageParts : IUnknown
1123 /* FIXME: fill this in */
1127 uuid(c558834d-7f86-11d0-8252-00c04fd85ab4),
1128 object
1130 interface IMimeEnumHeaderRows : IUnknown
1132 typedef struct tagENUMHEADERROW
1134 HHEADERROW hRow;
1135 LPSTR pszHeader;
1136 LPSTR pszData;
1137 ULONG cchData;
1138 DWORD_PTR dwReserved;
1139 } ENUMHEADERROW, *LPENUMHEADERROW;
1141 /* FIXME: fill this in */
1145 uuid(fd853cee-7f86-11d0-8252-00c04fd85ab4),
1146 object
1148 interface IMimeEnumProperties : IUnknown
1150 typedef [unique] IMimeEnumProperties *LPMIMEENUMPROPERTIES;
1152 typedef struct tagENUMPROPERTY
1154 LPSTR pszName;
1155 HHEADERROW hRow;
1156 DWORD dwPropId;
1157 } ENUMPROPERTY, *LPENUMPROPERTY;
1159 HRESULT Next(
1160 [in] ULONG cFetch,
1161 [in, out] LPENUMPROPERTY prgProp,
1162 [out] ULONG *pcFetched);
1164 HRESULT Skip(
1165 [in] ULONG cItems);
1167 HRESULT Reset(void);
1169 HRESULT Clone(
1170 [out] IMimeEnumProperties **ppEnum);
1172 HRESULT Count(
1173 [out] ULONG *pcItems);
1178 uuid(c5588354-7f86-11d0-8252-00c04fd85ab4),
1179 object
1181 interface IMimeEnumAddressTypes : IUnknown
1183 /* FIXME: fill this in */
1187 uuid(c5588350-7f86-11d0-8252-00c04fd85ab4),
1188 object
1190 interface IMimeEnumMessageParts : IUnknown
1192 /* FIXME: fill this in */
1196 uuid(64577981-86d7-11d1-bdfc-00c04fa31009),
1197 object
1199 interface IHashTable : IUnknown
1201 /* FIXME: fill this in */
1205 uuid(c5588351-7f86-11d0-8252-00c04fd85ab4),
1206 object
1208 interface IMimeAllocator : IMalloc
1210 typedef [unique] IMimeAllocator *LPMIMEALLOCATOR;
1212 HRESULT FreeParamInfoArray(
1213 [in] ULONG cParams,
1214 [in] LPMIMEPARAMINFO prgParam,
1215 [in] boolean fFreeArray);
1217 HRESULT FreeAddressList(
1218 [in,out] LPADDRESSLIST pList);
1220 HRESULT FreeAddressProps(
1221 [in,out] LPADDRESSPROPS pAddress);
1223 HRESULT ReleaseObjects(
1224 [in] ULONG cObjects,
1225 [in] IUnknown **prgpUnknown,
1226 [in] boolean fFreeArray);
1228 HRESULT FreeEnumHeaderRowArray(
1229 [in] ULONG cRows,
1230 [in] LPENUMHEADERROW prgRow,
1231 [in] boolean fFreeArray);
1233 HRESULT FreeEnumPropertyArray(
1234 [in] ULONG cProps,
1235 [in] LPENUMPROPERTY prgProp,
1236 [in] boolean fFreeArray);
1238 HRESULT FreeThumbprint(
1239 [in] THUMBBLOB *pthumbprint);
1241 HRESULT PropVariantClear(
1242 [in] LPPROPVARIANT pProp);
1247 uuid(feceaffd-c441-11d1-960e-00c04fbd7c09),
1248 object
1250 interface IMimeObjResolver : IUnknown
1252 /* FIXME: fill this in */
1256 uuid(b0d17fc2-7bc4-11d1-bdfa-00c04fa31009),
1257 object
1259 interface IFontCache : IUnknown
1261 /* FIXME: fill this in */
1265 uuid(b0d17fc5-7bc4-11d1-bdfa-00c04fa31009),
1266 object
1268 interface IFontCacheNotify : IUnknown
1270 /* FIXME: fill this in */
1274 uuid(70183210-7b36-11d2-8c12-00c04fa31009),
1275 object
1277 interface IMimeEditTag : IUnknown
1279 /* FIXME: fill this in */
1283 uuid(d09ee528-7b38-11d2-8c12-00c04fa31009),
1284 object
1286 interface IMimeEditTagCollection : IUnknown
1288 /* FIXME: fill this in */
1292 uuid(ba715ae0-a740-11d2-8b22-0080c76b34c6),
1293 local
1295 interface IMimeSecurityCallback : IUnknown
1297 /* FIXME: fill this in */
1299 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_UNKNOWN 0")
1300 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_KEYTRANS 1")
1301 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_KEYAGREE 2")
1302 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_MAIL_LIST 3")
1304 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_CERTIFICATE 0")
1305 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_KEYTRANS 1")
1306 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_PROVIDER 2")
1307 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_EPHEMERAL_KEYAGREE 3")
1308 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_STATIC_KEYAGREE 4")
1310 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_CERTIFICATE 0")
1311 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_ISSUERSERIAL 1")
1312 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_KEY_ID 2")
1317 cpp_quote("#ifdef __cplusplus")
1318 cpp_quote(" extern \"C\" {")
1319 cpp_quote("#endif")
1321 cpp_quote("")
1322 cpp_quote("HRESULT WINAPI MimeOleSetCompatMode(DWORD);")
1323 cpp_quote("HRESULT WINAPI MimeOleContentTypeFromUrl(LPCSTR,LPCSTR,LPSTR*);")
1324 cpp_quote("HRESULT WINAPI MimeOleParseMhtmlUrl(LPSTR,LPSTR*,LPSTR*);")
1325 cpp_quote("HRESULT WINAPI MimeOleObjectFromUrl(LPCSTR,BOOL,REFIID,LPVOID*,IUnknown**);")
1326 cpp_quote("HRESULT WINAPI MimeOleObjectFromMoniker(BINDF,IMoniker*,IBindCtx*,REFIID,LPVOID*,IMoniker**);")
1327 cpp_quote("HRESULT WINAPI MimeOleCombineURL(LPCSTR,ULONG,LPCSTR,ULONG,BOOL,LPSTR*);")
1328 cpp_quote("HRESULT WINAPI MimeOleGetSubjectFileName(IMimePropertySet*,ULONG*,ULONG*,LPSTR,ULONG);")
1329 cpp_quote("HRESULT WINAPI MimeOleCreateWebDocument(LPCSTR,LPCSTR,IMimeWebDocument**);")
1330 cpp_quote("HRESULT WINAPI MimeOleGetRelatedSection(IMimeMessageTree*,boolean,LPHBODY,boolean*);")
1331 cpp_quote("HRESULT WINAPI MimeOleGetMixedSection(IMimeMessageTree*,boolean,LPHBODY,boolean*);")
1332 cpp_quote("HRESULT WINAPI MimeOleGetAlternativeSection(IMimeMessageTree*,LPHBODY,boolean*);")
1333 cpp_quote("HRESULT WINAPI MimeOleGenerateCID(LPSTR,ULONG,boolean);")
1334 cpp_quote("HRESULT WINAPI MimeOleGenerateMID(LPSTR,ULONG,boolean);")
1335 cpp_quote("HRESULT WINAPI MimeOleCreateByteStream(IStream**);")
1336 cpp_quote("HRESULT WINAPI MimeOlGetPropertySchema(IMimePropertySchema**);")
1337 cpp_quote("HRESULT WINAPI MimeOleQueryString(LPCSTR,LPCSTR,boolean,boolean);")
1338 cpp_quote("HRESULT WINAPI MimeOleGetPropA(IMimePropertySet*,LPCSTR,DWORD,LPSTR*);")
1339 cpp_quote("HRESULT WINAPI MimeOleSetPropA(IMimePropertySet*,LPCSTR,DWORD,LPCSTR);")
1340 cpp_quote("HRESULT WINAPI MimeOleGetPropW(IMimePropertySet*,LPCSTR,DWORD,LPWSTR*);")
1341 cpp_quote("HRESULT WINAPI MimeOleSetPropW(IMimePropertySet*,LPCSTR,DWORD,LPCWSTR);")
1342 cpp_quote("HRESULT WINAPI MimeOleGetBodyPropA(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPSTR*);")
1343 cpp_quote("HRESULT WINAPI MimeOleSetBodyPropA(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPCSTR);")
1344 cpp_quote("HRESULT WINAPI MimeOleGetBodyPropW(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPWSTR*);")
1345 cpp_quote("HRESULT WINAPI MimeOleSetBodyPropW(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPCWSTR);")
1346 cpp_quote("HRESULT WINAPI MimeOleCreateHeaderTable(IMimeHeaderTable**);")
1347 cpp_quote("HRESULT WINAPI MimeOleVariantFree(LPPROPVARIANT);")
1348 cpp_quote("HRESULT WINAPI MimeOleVariantCopy(LPPROPVARIANT,LPPROPVARIANT);")
1349 cpp_quote("HRESULT WINAPI MimeOleGetExtClassId(LPCSTR,LPCLSID);")
1350 cpp_quote("HRESULT WINAPI MimeOleEncodeHeader(HCHARSET,LPPROPVARIANT,LPSTR*,LPRFC1522INFO);")
1351 cpp_quote("HRESULT WINAPI MimeOleDecodeHeader(HCHARSET,LPCSTR,LPPROPVARIANT,LPRFC1522INFO);")
1352 cpp_quote("HRESULT WINAPI MimeOleRfc1522Decode(LPCSTR,LPSTR,ULONG,LPSTR*);")
1353 cpp_quote("HRESULT WINAPI MimeOleRfc1522Encode(LPCSTR,HCHARSET,LPSTR*);")
1354 cpp_quote("HRESULT WINAPI MimeOleGetInternat(IMimeInternational**);")
1355 cpp_quote("HRESULT WINAPI MimeOleFindCharset(LPCSTR,LPHCHARSET);")
1356 cpp_quote("HRESULT WINAPI MimeOleGetCharsetInfo(HCHARSET,LPINETCSETINFO);")
1357 cpp_quote("HRESULT WINAPI MimeOleGetCodePageInfo(HCHARSET,LPCODEPAGEINFO);")
1358 cpp_quote("HRESULT WINAPI MimeOleGetDefaultCharset(LPHCHARSET);")
1359 cpp_quote("HRESULT WINAPI MimeOleSetDefaultCharset(HCHARSET);")
1360 cpp_quote("HRESULT WINAPI MimeOleGetCodePageCharset(CODEPAGEID,CHARSETTYPE,LPHCHARSET);")
1361 cpp_quote("HRESULT WINAPI MimeOleCreateVirtualStream(IStream**);")
1362 cpp_quote("HRESULT WINAPI MimeOleOpenFileStream(LPCSTR,DWORD,DWORD,IStream**);")
1363 cpp_quote("HRESULT WINAPI MimeOleIsTnefStream(IStream*);")
1364 cpp_quote("HRESULT WINAPI MimeOleGenerateFileName(LPCSTR,LPCSTR,LPCSTR,LPSTR*);")
1365 cpp_quote("HRESULT WINAPI MimeOleGetFileExtension(LPCSTR,LPSTR,ULONG);")
1366 cpp_quote("HRESULT WINAPI MimeOleCreateSecurity(IMimeSecurity**);")
1367 cpp_quote("HRESULT WINAPI MimeOleInetDateToFileTime(LPCSTR,LPFILETIME);")
1368 cpp_quote("HRESULT WINAPI MimeOleFileTimeToInetDate(LPFILETIME,LPSTR,ULONG);")
1369 cpp_quote("HRESULT WINAPI MimeOleCreateMessageParts(IMimeMessageParts**);")
1370 cpp_quote("HRESULT WINAPI MimeOleGetAllocator(IMimeAllocator**);")
1371 cpp_quote("HRESULT WINAPI MimeOleParseRfc822Address(DWORD,ENCODINGTYPE,LPCSTR,LPADDRESSLIST);")
1372 cpp_quote("HRESULT WINAPI MimeOleCreateMessage(IUnknown*,IMimeMessage**);")
1373 cpp_quote("HRESULT WINAPI MimeOleMergePartialHeaders(IStream*,IStream*);")
1374 cpp_quote("HRESULT WINAPI MimeOleEscapeString(CODEPAGEID,LPCSTR,LPSTR*);")
1375 cpp_quote("HRESULT WINAPI MimeOleGetExtContentType(LPCSTR,LPSTR*);")
1376 cpp_quote("HRESULT WINAPI MimeOleGetContentTypeExt(LPCSTR,LPSTR*);")
1377 cpp_quote("HRESULT WINAPI MimeOleGetFileInfo(LPSTR,LPSTR*,LPSTR*,LPSTR*,LPSTR*,LPSTR*);")
1378 cpp_quote("HRESULT WINAPI MimeOleCreateBody(IMimeBody**);")
1379 cpp_quote("HRESULT WINAPI MimeOleCreatePropertySet(IUnknown*,IMimePropertySet**);")
1380 cpp_quote("HRESULT WINAPI MimeOleCreateMessageTree(IUnknown*,IMimeMessageTree**);")
1381 cpp_quote("HRESULT WINAPI MimeOleGetCertsFromThumbprints(THUMBBLOB*,X509CERTRESULT*,const HCERTSTORE*,DWORD);")
1382 cpp_quote("HRESULT WINAPI MimeOleSplitMessage(IMimeMessage*,ULONG,IMimeMessageParts**);")
1383 cpp_quote("HRESULT WINAPI MimeOleClearDirtyTree(IMimeMessageTree*);")
1384 cpp_quote("HRESULT WINAPI MimeOleConvertEnrichedToHTML(CODEPAGEID,IStream*,IStream*);")
1385 cpp_quote("HRESULT WINAPI MimeOleSMimeCapsToDlg(LPBYTE,DWORD,DWORD,PCX509CERT*,HWND,DWORD,DWORD,DWORD);")
1386 cpp_quote("HRESULT WINAPI MimeOleSMimeCapsFromDlg(HWND,DWORD,DWORD,DWORD,LPBYTE,DWORD*);")
1387 cpp_quote("HRESULT WINAPI MimeOleSMimeCapInit(LPBYTE,DWORD,LPVOID*);")
1388 cpp_quote("HRESULT WINAPI MimeOleSMimeCapAddSMimeCap(LPBYTE,DWORD,LPVOID);")
1389 cpp_quote("HRESULT WINAPI MimeOleSMimeCapAddCert(LPBYTE,DWORD,BOOL,LPVOID);")
1390 cpp_quote("HRESULT WINAPI MimeOleSMimeCapGetEncAlg(LPVOID,LPBYTE,DWORD*,DWORD*);")
1391 cpp_quote("HRESULT WINAPI MimeOleSMimeCapGetHashAlg(LPVOID,LPBYTE,DWORD*,DWORD*);")
1392 cpp_quote("HRESULT WINAPI MimeOleSMimeCapRelease(LPVOID);")
1393 cpp_quote("HRESULT WINAPI MimeOleAlgNameFromSMimeap(LPBYTE,DWORD,LPCSTR*);")
1394 cpp_quote("HRESULT WINAPI MimeOleAlgStrengthFromSMimeCap(LPBYTE,DWORD,BOOL,DWORD*);")
1395 cpp_quote("HRESULT WINAPI MimeOleSMimeCapsFull(LPVOID,BOOL,BOOL,LPBYTE,DWORD*);")
1396 cpp_quote("HRESULT WINAPI MimeOleCreateHashTable(DWORD,BOOL,IHashTable**);")
1397 cpp_quote("HRESULT WINAPI MimeOleStripHeaders(IMimeMessage*,HBODY,LPCSTR,LPCSTR,IStream**);")
1399 cpp_quote("HRESULT WINAPI MimeEditViewSource(HWND,IMimeMessage*);")
1400 cpp_quote("HRESULT WINAPI MimeEditIsSafeToRun(HWND,LPCSTR);")
1401 cpp_quote("HRESULT WINAPI MimeEditVerifyTrust(HWND,LPCSTR,LPCSTR);")
1402 cpp_quote("HRESULT WINAPI MimeEditCreateMimeDocument(IUnknown*,IMimeMessage*,DWORD,IMimeMessage**);")
1403 cpp_quote("HRESULT WINAPI MimeEditGetBackgroundImageUrl(IUnknown*,BSTR*);")
1404 cpp_quote("HRESULT WINAPI MimeEditDocumentFromStream(IStream*,REFIID,void**);")
1406 cpp_quote("HRESULT WINAPI MimeOleGetPropertySchema(IMimePropertySchema**);")
1408 cpp_quote("#ifdef __cplusplus")
1409 cpp_quote("}")
1410 cpp_quote("#endif")