kernel32/tests: Fix a few tests on win9x.
[wine/multimedia.git] / include / mimeole.idl
blob508ca26e767da4bb468a31fecbb8b29a66af7a0a
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);")
36 cpp_quote("#define MIME_E_REG_CREATE_KEY 0x800cce01")
37 cpp_quote("#define MIME_E_REG_QUERY_INFO 0x800cce02")
38 cpp_quote("#define MIME_E_INVALID_ENCTYPE 0x800cce03")
39 cpp_quote("#define MIME_E_BOUNDARY_MISMATCH 0x800cce04")
40 cpp_quote("#define MIME_E_NOT_FOUND 0x800cce05")
41 cpp_quote("#define MIME_E_NO_DATA 0x800cce05")
42 cpp_quote("#define MIME_E_BUFFER_TOO_SMALL 0x800cce06")
44 cpp_quote("#define MIME_E_INVALID_TEXT_TYPE 0x800cce38")
46 cpp_quote("#define MIME_E_SECURITY_NOOP 0x800cceb1")
47 cpp_quote("#define MIME_S_SECURITY_NOOP 0x000cceb1")
49 cpp_quote("typedef enum tagMIMEPROPID {")
50 cpp_quote(" PID_HDR_NEWSGROUP = 2,")
51 cpp_quote(" PID_HDR_NEWSGROUPS = 3,")
52 cpp_quote(" PID_HDR_REFS = 4,")
53 cpp_quote(" PID_HDR_SUBJECT = 5,")
54 cpp_quote(" PID_HDR_FROM = 6,")
55 cpp_quote(" PID_HDR_MESSAGEID = 7,")
56 cpp_quote(" PID_HDR_RETURNPATH = 8,")
57 cpp_quote(" PID_HDR_RR = 9,")
58 cpp_quote(" PID_HDR_RETRCPTO = 10,")
59 cpp_quote(" PID_HDR_APPARTO = 11,")
60 cpp_quote(" PID_HDR_DATE = 12,")
61 cpp_quote(" PID_HDR_RECEIVED = 13,")
62 cpp_quote(" PID_HDR_REPLYTO = 14,")
63 cpp_quote(" PID_HDR_XMAILER = 15,")
64 cpp_quote(" PID_HDR_BCC = 16,")
65 cpp_quote(" PID_HDR_MIMEVER = 17,")
66 cpp_quote(" PID_HDR_CNTTYPE = 18,")
67 cpp_quote(" PID_HDR_CNTXFER = 19,")
68 cpp_quote(" PID_HDR_CNTID = 20,")
69 cpp_quote(" PID_HDR_CNTDESC = 21,")
70 cpp_quote(" PID_HDR_CNTDISP = 22,")
71 cpp_quote(" PID_HDR_CNTBASE = 23,")
72 cpp_quote(" PID_HDR_CNTLOC = 24,")
73 cpp_quote(" PID_HDR_TO = 25,")
74 cpp_quote(" PID_HDR_PATH = 26,")
75 cpp_quote(" PID_HDR_FOLLOWUPTO = 27,")
76 cpp_quote(" PID_HDR_EXPIRES = 28,")
77 cpp_quote(" PID_HDR_CC = 29,")
79 cpp_quote(" PID_HDR_SENDER = 61,")
81 cpp_quote(" PID_HDR_INREPLYTO = 77,")
82 cpp_quote("} MIMEPROPID;")
84 cpp_quote("#define TYPEDID_MASK ((ULONG)0xffff)")
85 cpp_quote("#define TYPEDID_TYPE(t) ((VARTYPE)((t) & TYPEDID_MASK))")
87 cpp_quote("#define OID_HIDE_TNEF_ATTACHMENTS (0x000e0000 | VT_BOOL)")
88 cpp_quote("#define OID_SECURITY_TYPE (0x00180000 | VT_UI4)")
89 cpp_quote("#define OID_SECURITY_HWND_OWNER (0x00320000 | VT_UI4)")
90 cpp_quote("#define OID_HEADER_RELOAD_TYPE (0x00370000 | VT_UI4)")
91 cpp_quote("#define OID_SHOW_MACBINARY (0x00390000 | VT_BOOL)")
95 uuid(e4b28371-83b0-11d0-8259-00c04fd85ab4),
96 version(1.0)
98 library MIMEOLE
100 importlib("stdole2.tlb");
102 DECLARE_HANDLE(HCHARSET);
103 DECLARE_HANDLE(HBODY);
104 DECLARE_HANDLE(HHEADERROW);
106 typedef HCHARSET *LPHCHARSET;
107 typedef HBODY *LPHBODY;
108 typedef HHEADERROW *LPHHEADERROW;
109 typedef DWORD TYPEDID;
110 typedef const PROPVARIANT *LPCPROPVARIANT;
111 typedef const BLOB *LPCBLOB;
113 typedef enum tagRELOADTYPE
115 RELOAD_HEADER_NONE,
116 RELOAD_HEADER_RESET,
117 RELOAD_HEADER_APPEND,
118 RELOAD_HEADER_REPLACE,
119 } RELOADTYPE;
121 typedef enum tagMIMESAVETYPE
123 SAVE_RFC822,
124 SAVE_RFC1521,
125 } MIMESAVETYPE;
127 typedef enum tagCSETAPPLYTYPE
129 CSET_APPLY_UNTAGGED,
130 CSET_APPLY_ALL,
131 CSET_APPLY_TAG_ALL,
132 } CSETAPPLYTYPE;
134 typedef enum tagENCODINGTYPE
136 IET_BINARY,
137 IET_BASE64,
138 IET_UUENCODE,
139 IET_QP,
140 IET_7BIT,
141 IET_8BIT,
142 IET_INETCSET,
143 IET_UNICODE,
144 IET_RFC1522,
145 IET_ENCODED,
146 IET_CURRENT,
147 IET_UNKNOWN,
148 IET_BINHEX40,
149 IET_LAST
150 } ENCODINGTYPE;
152 const SHORT IET_DECODED = IET_BINARY;
154 const SHORT CCHMAX_HEADER_LINE = 1000;
157 uuid(c5588349-7f86-11d0-8252-00c04fd85ab4),
158 object
160 interface IMimeInternational : IUnknown
162 typedef [unique] IMimeInternational *LPMIMEINTERNATIONAL;
163 typedef DWORD CODEPAGEID;
165 const CODEPAGEID CP_USASCII = 1252;
166 const CODEPAGEID CP_UNICODE = 1200;
167 const CODEPAGEID CP_JAUTODETECT = 50932;
168 const CODEPAGEID CP_KAUTODETECT = 50949;
169 const CODEPAGEID CP_ISO2022JPESC = 50221;
170 const CODEPAGEID CP_ISO2022JPSIO = 50222;
172 const SHORT CCHMAX_CSET_NAME = 128;
173 const SHORT CCHMAX_LANG_NAME = 128;
174 const SHORT CCHMAX_FACE_NAME = 128;
176 typedef struct tagINETCSETINFO
178 CHAR szName[CCHMAX_CSET_NAME];
179 HCHARSET hCharset;
180 CODEPAGEID cpiWindows;
181 CODEPAGEID cpiInternet;
182 DWORD dwReserved1;
183 } INETCSETINFO, *LPINETCSETINFO;
185 typedef enum tagINETLANGMASK
187 ILM_FAMILY = 0x01,
188 ILM_NAME = 0x02,
189 ILM_BODYCSET = 0x04,
190 ILM_HEADERCSET = 0x08,
191 ILM_WEBCSET = 0x10,
192 ILM_FIXEDFONT = 0x20,
193 ILM_VARIABLEFONT = 0x40,
194 } INETLANGMASK;
196 typedef struct tagCODEPAGEINFO
198 DWORD dwMask;
199 CODEPAGEID cpiCodePage;
200 BOOL fIsValidCodePage;
201 ULONG ulMaxCharSize;
202 BOOL fInternetCP;
203 CODEPAGEID cpiFamily;
204 CHAR szName[CCHMAX_LANG_NAME];
205 CHAR szBodyCset[CCHMAX_CSET_NAME];
206 CHAR szHeaderCset[CCHMAX_CSET_NAME];
207 CHAR szWebCset[CCHMAX_CSET_NAME];
208 CHAR szFixedFont[CCHMAX_FACE_NAME];
209 CHAR szVariableFont[CCHMAX_FACE_NAME];
210 ENCODINGTYPE ietNewsDefault;
211 ENCODINGTYPE ietMailDefault;
212 DWORD dwReserved1;
213 } CODEPAGEINFO, *LPCODEPAGEINFO;
215 typedef struct tagRFC1522INFO
217 BOOL fRfc1522Allowed;
218 BOOL fRfc1522Used;
219 BOOL fAllow8bit;
220 HCHARSET hRfc1522Cset;
221 } RFC1522INFO, *LPRFC1522INFO;
223 typedef enum tagCHARSETTYPE
225 CHARSET_BODY,
226 CHARSET_HEADER,
227 CHARSET_WEB,
228 } CHARSETTYPE;
231 HRESULT SetDefaultCharset(
232 [in] HCHARSET hCharset);
233 HRESULT GetDefaultCharset(
234 [out] LPHCHARSET phCharset);
235 HRESULT GetCodePageCharset(
236 [in] CODEPAGEID cpiCodePage,
237 [in] CHARSETTYPE ctCsetType,
238 [out] LPHCHARSET phCharset);
239 HRESULT FindCharset(
240 [in] LPCSTR pszCharset,
241 [out] LPHCHARSET phCharset);
242 HRESULT GetCharsetInfo(
243 [in] HCHARSET hCharset,
244 [in, out] LPINETCSETINFO pCsetInfo);
245 HRESULT GetCodePageInfo(
246 [in] CODEPAGEID cpiCodePage,
247 [in, out] LPCODEPAGEINFO pCodePageInfo);
248 HRESULT DecodeHeader(
249 [in] HCHARSET hCharset,
250 [in] LPCSTR pszData,
251 [in, out] LPPROPVARIANT pDecoded,
252 [in, out] LPRFC1522INFO pRfc1522Info);
253 HRESULT EncodeHeader(
254 [in] HCHARSET hCharset,
255 [in] LPPROPVARIANT pData,
256 [out] LPSTR *ppszEncoded,
257 [in, out] LPRFC1522INFO pRfc1522Info);
258 HRESULT ConvertBuffer(
259 [in] CODEPAGEID cpiSource,
260 [in] CODEPAGEID cpiDest,
261 [in] LPBLOB pIn,
262 [in, out] LPBLOB pOut,
263 [out] ULONG *pcbRead);
264 HRESULT ConvertString(
265 [in] CODEPAGEID cpiSource,
266 [in] CODEPAGEID cpiDest,
267 [in] LPPROPVARIANT pIn,
268 [in, out] LPPROPVARIANT pOut);
269 HRESULT MLANG_ConvertInetReset();
270 HRESULT MLANG_ConvertInetString(
271 [in] CODEPAGEID cpiSource,
272 [in] CODEPAGEID cpiDest,
273 [in] LPCSTR pSource,
274 [in] int *pnSizeOfSource,
275 [out] LPSTR pDestination,
276 [in] int *pnDstSize);
277 HRESULT Rfc1522Decode(
278 [in] LPCSTR pszValue,
279 [in] LPCSTR pszCharset,
280 [in] ULONG cchmax,
281 [out] LPSTR *ppszDecoded);
282 HRESULT Rfc1522Encode(
283 [in] LPCSTR pszValue,
284 [in] HCHARSET hCharset,
285 [out] LPSTR *ppszEncoded);
289 uuid(c5588353-7f86-11d0-8252-00c04fd85ab4),
290 object
292 interface IMimeSecurity : IUnknown
294 typedef [unique] IMimeSecurity *LPMIMESECURITY;
296 cpp_quote("#ifdef __WINE_WINCRYPT_H")
297 cpp_quote("typedef PCCERT_CONTEXT PCX509CERT;")
298 cpp_quote("#else")
299 typedef const void *PCX509CERT;
300 typedef void *HCERTSTORE;
301 cpp_quote("#endif")
303 typedef BLOB THUMBBLOB;
304 typedef void *HCAPICERTSTORE;
306 cpp_quote("#define MST_NONE 0x00000000")
307 cpp_quote("#define MST_THIS_SIGN 0x00000001")
308 cpp_quote("#define MST_THIS_ENCRYPT 0x00000002")
309 cpp_quote("#define MST_BLOB_FLAG 0x00000004")
310 cpp_quote("#define MST_THIS_BLOBSIGN (MST_BLOB_FLAG | MST_THIS_SIGN)")
311 cpp_quote("#define MST_CHILD_SIGN 0x00000100")
312 cpp_quote("#define MST_CHILD_ENCRYPT 0x00000200")
313 cpp_quote("#define MST_SUBMSG_SIGN 0x00001000")
314 cpp_quote("#define MST_SUBMSG_ENCRYPT 0x00002000")
315 cpp_quote("#define MST_RECEIPT_REQUEST 0x00010000")
316 cpp_quote("#define MST_CLASS_SMIME_V1 0x00000000")
317 cpp_quote("#define MST_CLASS_PGP 0x01000000")
319 typedef enum tagCERTSTATE
321 CERTIFICATE_OK,
322 CERTIFICATE_NOT_PRESENT,
323 CERTIFICATE_EXPIRED,
324 CERTIFICATE_CHAIN_TOO_LONG,
325 CERTIFICATE_MISSING_ISSUER,
326 CERTIFICATE_CRL_LISTED,
327 CERTIFICATE_NOT_TRUSTED,
328 CERTIFICATE_INVALID,
329 CERTIFICATE_ERROR,
330 CERTIFICATE_NOPRINT,
331 CERTIFICATE_UNKNOWN
332 } CERTSTATE;
334 typedef enum tagCERTNAMETYPE
336 SIMPLE,
337 OID,
338 X500,
339 } CERTNAMETYPE;
341 typedef enum tagCERTDATAID
343 CDID_EMAIL,
344 CDID_MAX
345 } CERTDATAID;
347 typedef struct tagX509CERTRESULT
349 DWORD cEntries;
350 CERTSTATE *rgcs;
351 PCX509CERT *rgpCert;
352 } X509CERTRESULT, *PX509CERTRESULT;
353 typedef const X509CERTRESULT *PCX509CERTRESULT;
355 HRESULT InitNew(void);
357 HRESULT CheckInit(void);
359 HRESULT EncodeMessage(
360 [in] IMimeMessageTree */*const*/ pTree,
361 [in] DWORD dwFlags);
363 HRESULT EncodeBody(
364 [in] IMimeMessageTree */*const*/ pTree,
365 [in] HBODY hEncodeRoot,
366 [in] DWORD dwFlags);
368 HRESULT DecodeMessage(
369 [in] IMimeMessageTree */*const*/ pTree,
370 [in] DWORD dwFlags);
372 HRESULT DecodeBody(
373 [in] IMimeMessageTree */*const*/ pTree,
374 [in] HBODY hDecodeRoot,
375 [in] DWORD dwFlags);
377 HRESULT EnumCertificates(
378 [in] HCAPICERTSTORE hc,
379 [in] DWORD dwUsage,
380 [in] PCX509CERT pPrev,
381 [out] PCX509CERT *ppCert);
383 HRESULT GetCertificateName(
384 [in] const PCX509CERT pX509Cert,
385 [in] const CERTNAMETYPE cn,
386 [out] LPSTR *ppszName);
388 HRESULT GetMessageType(
389 [in] const HWND hwndParent,
390 [in] IMimeBody */*const*/ pBody,
391 [out] DWORD */*const*/ pdwSecType);
393 HRESULT GetCertData(
394 [in] const PCX509CERT pX509Cert,
395 [in] const CERTDATAID dataid,
396 [out, ref] LPPROPVARIANT pValue);
400 uuid(fd853cd1-7f86-11d0-8252-00c04fd85ab4),
401 object
403 interface IMimeHeaderTable : IPersistStream
405 /* FIXME: fill this in */
409 uuid(fd853cec-7f86-11d0-8252-00c04fd85ab4),
410 object
412 interface IMimePropertySchema : IUnknown
414 typedef enum tagMIMEPROPFLAGS
416 MPF_INETCSET = 0x01,
417 MPF_RFC1522 = 0x02,
418 MPF_ADDRESS = 0x04,
419 MPF_HASPARAMS = 0x08,
420 MPF_MIME = 0x10,
421 MPF_READONLY = 0x20
422 } MIMEPROPFLAGS;
424 /* FIXME: fill this in */
428 uuid(fd853cd3-7f86-11d0-8252-00c04fd85ab4),
429 object
431 interface IMimePropertySet : IPersistStreamInit
433 typedef [unique] IMimePropertySet *LPMIMEPROPERTYSET;
435 cpp_quote("#define PDF_ENCODED 0x00000001")
436 cpp_quote("#define PDF_NAMEINDATA 0x00000002")
437 cpp_quote("#define PDF_HEADERFORMAT (0x00000004 | PDF_ENCODED)")
438 cpp_quote("#define PDF_NOCOMMENTS 0x00000008")
439 cpp_quote("#define PDF_SAVENOENCODE 0x00000010")
440 cpp_quote("#define PDF_VECTOR 0x00000020")
442 typedef struct tagMIMEPARAMINFO
444 LPSTR pszName;
445 LPSTR pszData;
446 } MIMEPARAMINFO, *LPMIMEPARAMINFO;
448 typedef enum tagPROPINFOMASK
450 PIM_CHARSET = 0x01,
451 PIM_ENCODINGTYPE = 0x02,
452 PIM_ROWNUMBER = 0x04,
453 PIM_FLAGS = 0x08,
454 PIM_PROPID = 0x10,
455 PIM_VALUES = 0x20,
456 PIM_VTDEFAULT = 0x40,
457 PIM_VTCURRENT = 0x80
458 } PROPINFOMASK;
460 typedef struct tagMIMEPROPINFO
462 DWORD dwMask;
463 HCHARSET hCharset;
464 ENCODINGTYPE ietEncoding;
465 DWORD dwRowNumber;
466 DWORD dwFlags;
467 DWORD dwPropId;
468 DWORD cValues;
469 VARTYPE vtDefault;
470 VARTYPE vtCurrent;
471 } MIMEPROPINFO, *LPMIMEPROPINFO;
472 typedef const MIMEPROPINFO *LPCMIMEPROPINFO;
474 HRESULT GetPropInfo(
475 [in] LPCSTR pszName,
476 [in,out] LPMIMEPROPINFO pInfo);
478 HRESULT SetPropInfo(
479 [in] LPCSTR pszName,
480 [in] LPCMIMEPROPINFO pInfo);
482 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
483 cpp_quote("#undef GetProp")
484 cpp_quote("#undef SetProp")
485 cpp_quote("#undef EnumProps")
486 cpp_quote("#endif")
487 HRESULT GetProp(
488 [in] LPCSTR pszName,
489 [in] DWORD dwFlags,
490 [in,out] LPPROPVARIANT pValue);
492 HRESULT SetProp(
493 [in] LPCSTR pszName,
494 [in] DWORD dwFlags,
495 [in] LPCPROPVARIANT pValue);
497 HRESULT AppendProp(
498 [in] LPCSTR pszName,
499 [in] DWORD dwFlags,
500 [in] LPPROPVARIANT pValue);
502 HRESULT DeleteProp(
503 [in] LPCSTR pszName);
505 HRESULT CopyProps(
506 [in] ULONG cNames,
507 [in,unique] LPCSTR *prgszName,
508 [in] IMimePropertySet *pPropertySet);
510 HRESULT MoveProps(
511 [in] ULONG cNames,
512 [in] LPCSTR *prgszName,
513 [in] IMimePropertySet *pPropertySet);
515 HRESULT DeleteExcept(
516 [in] ULONG cNames,
517 [in] LPCSTR *prgszName);
519 HRESULT QueryProp(
520 [in] LPCSTR pszName,
521 [in] LPCSTR pszCriteria,
522 [in] boolean fSubString,
523 [in] boolean fCaseSensitive);
525 HRESULT GetCharset(
526 [out] LPHCHARSET phCharset);
528 HRESULT SetCharset(
529 [in] HCHARSET hCharset,
530 [in] CSETAPPLYTYPE applytype);
532 HRESULT GetParameters(
533 [in] LPCSTR pszName,
534 [out] ULONG *pcParams,
535 [out] LPMIMEPARAMINFO *pprgParam);
537 HRESULT IsContentType(
538 [in] LPCSTR pszPriType,
539 [in,unique] LPCSTR pszSubType);
541 HRESULT BindToObject(
542 [in] REFIID riid,
543 [out,iid_is(riid)] void **ppvObject);
545 HRESULT Clone(
546 [out] IMimePropertySet **ppPropertySet);
548 HRESULT SetOption(
549 [in] const TYPEDID oid,
550 [in] LPCPROPVARIANT pValue);
552 HRESULT GetOption(
553 [in] const TYPEDID oid,
554 [in,out] LPPROPVARIANT pValue);
556 cpp_quote("#define EPF_NONAME 0x00000001")
558 HRESULT EnumProps(
559 [in] DWORD dwFlags,
560 [out] IMimeEnumProperties **ppEnum);
565 uuid(c558834a-7f86-11d0-8252-00c04fd85ab4),
566 object
568 interface IMimeAddressTable : IUnknown
570 typedef [unique] IMimeAddressTable *LPMIMEADDRESSTABLE;
572 DECLARE_HANDLE(HADDRESS);
573 typedef HADDRESS *LPHADDRESS;
574 typedef DWORD IADDRESSTYPE;
576 typedef enum tagADDRESSFORMAT
578 AFT_DISPLAY_FRIENDLY,
579 AFT_DISPLAY_EMAIL,
580 AFT_DISPLAY_BOTH,
581 AFT_RFC822_DECODED,
582 AFT_RFC822_ENCODED,
583 AFT_RFC822_TRANSMIT,
584 } ADDRESSFORMAT;
586 typedef struct tagADDRESSPROPS
588 DWORD dwProps;
589 HADDRESS hAddress;
590 ENCODINGTYPE ietFriendly;
591 HCHARSET hCharset;
592 DWORD dwAdrType;
593 LPSTR pszFriendly;
594 LPWSTR pwszReserved;
595 LPSTR pszEmail;
596 CERTSTATE certstate;
597 THUMBBLOB tbSigning;
598 THUMBBLOB tbEncryption;
599 DWORD dwCookie;
600 DWORD dwReserved1;
601 DWORD dwReserved2;
602 } ADRESSPROPS, *LPADDRESSPROPS;
604 typedef struct tagADDRESSLIST
606 ULONG cAdrs;
607 LPADDRESSPROPS prgAdr;
608 } ADDRESSLIST, *LPADDRESSLIST;
610 /* FIXME: fill this in */
614 uuid(ee519f11-851a-11d0-8252-00c04fd85ab4),
615 object
617 interface IMimeWebDocument : IUnknown
619 /* FIXME: fill this in */
623 uuid(c558834c-7f86-11d0-8252-00c04fd85ab4),
624 object
626 interface IMimeBody : IMimePropertySet
628 typedef [unique] IMimeBody *LPMIMEBODY;
630 typedef enum tagIMSGBODYTYPE
632 IBT_SECURE,
633 IBT_ATTACHMENT,
634 IBT_EMPTY,
635 IBT_CSETTAGGED,
636 IBT_AUTOATTACH,
637 } IMSGBODYTYPE;
639 typedef struct tagBODYOFFSETS
641 DWORD cbBoundaryStart;
642 DWORD cbHeaderStart;
643 DWORD cbBodyStart;
644 DWORD cbBodyEnd;
645 } BODYOFFSETS, *LPBODYOFFSETS;
647 typedef struct tagTRANSMITINFO
649 ENCODINGTYPE ietCurrent;
650 ENCODINGTYPE ietXmitMime;
651 ENCODINGTYPE ietXmit822;
652 ULONG cbLongestLine;
653 ULONG cExtended;
654 ULONG ulPercentExt;
655 ULONG cbSize;
656 ULONG cLines;
657 } TRANSMITINFO, *LPTRANSMITINFO;
659 HRESULT IsType(
660 [in] IMSGBODYTYPE bodytype);
662 HRESULT SetDisplayName(
663 [in] LPCSTR pszDisplay);
665 HRESULT GetDisplayName(
666 [out] LPSTR *ppszDisplay);
668 HRESULT GetOffsets(
669 [out] LPBODYOFFSETS pOffsets);
671 HRESULT GetCurrentEncoding(
672 [out] ENCODINGTYPE *pietEncoding);
674 HRESULT SetCurrentEncoding(
675 [in] ENCODINGTYPE ietEncoding);
677 HRESULT GetEstimatedSize(
678 [in] ENCODINGTYPE ietEncoding,
679 [out] ULONG *pcbSize);
681 HRESULT GetDataHere(
682 [in] ENCODINGTYPE ietEncoding,
683 [in] IStream *pStream);
685 HRESULT GetData(
686 [in] ENCODINGTYPE ietEncoding,
687 [out] IStream **ppStream);
689 HRESULT SetData(
690 [in] ENCODINGTYPE ietEncoding,
691 [in,unique] LPCSTR pszPriType,
692 [in,unique] LPCSTR pszSubType,
693 [in] REFIID riid,
694 [in,iid_is(riid)] LPVOID pvObject);
696 HRESULT EmptyData(void);
698 HRESULT CopyTo(
699 [in] IMimeBody *pBody);
701 HRESULT GetTransmitInfo(
702 [in,out] LPTRANSMITINFO pTransmitInfo);
704 HRESULT SaveToFile(
705 [in] ENCODINGTYPE ietEncoding,
706 [in] LPCSTR pszFilePath);
708 HRESULT GetHandle(
709 [out] LPHBODY phBody);
714 uuid(fd853cd4-7f86-11d0-8252-00c04fd85ab4),
715 object
717 interface IMimeMessageTree : IPersistStreamInit
719 typedef [unique] IMimeMessageTree *LPMIMEMESSAGETREE;
721 const HBODY HBODY_ROOT = (HBODY)-1;
723 typedef enum tagBODYLOCATION
725 IBL_ROOT,
726 IBL_PARENT,
727 IBL_FIRST,
728 IBL_LAST,
729 IBL_NEXT,
730 IBL_PREVIOUS,
731 } BODYLOCATION;
733 typedef struct tagFINDBODY
735 LPSTR pszPriType;
736 LPSTR pszSubType;
737 DWORD dwReserved;
738 } FINDBODY, *LPFINDBODY;
740 HRESULT GetMessageSource(
741 [out] IStream **ppStream,
742 [in] DWORD dwFlags);
744 HRESULT GetMessageSize(
745 [out] ULONG *pcbSize,
746 [in] DWORD dwFlags);
748 HRESULT LoadOffsetTable(
749 [in] IStream *pStream);
751 HRESULT SaveOffsetTable(
752 [in] IStream *pStream,
753 [in] DWORD dwFlags);
755 HRESULT GetFlags(
756 [out] DWORD *pdwFlags);
758 HRESULT Commit(
759 [in] DWORD dwFlags);
761 HRESULT HandsOffStorage();
763 HRESULT BindToObject(
764 [in] const HBODY hBody,
765 [in] REFIID riid,
766 [out, iid_is(riid)] void **ppvObject);
768 HRESULT SaveBody(
769 [in] HBODY hBody,
770 [in] DWORD dwFlags,
771 [in] IStream *pStream);
773 HRESULT InsertBody(
774 [in] BODYLOCATION location,
775 [in] HBODY hPivot,
776 [out] LPHBODY phBody);
778 HRESULT GetBody(
779 [in] BODYLOCATION location,
780 [in] HBODY hPivot,
781 [out] LPHBODY phBody);
783 HRESULT DeleteBody(
784 [in] HBODY hBody,
785 [in] DWORD dwFlags);
787 HRESULT MoveBody(
788 [in] HBODY hBody,
789 [in] BODYLOCATION location);
791 HRESULT CountBodies(
792 [in] HBODY hParent,
793 [in] boolean fRecurse,
794 [out] ULONG *pcBodies);
796 HRESULT FindFirst(
797 [in, out] LPFINDBODY pFindBody,
798 [out] LPHBODY phBody);
800 HRESULT FindNext(
801 [in, out] LPFINDBODY pFindBody,
802 [out] LPHBODY phBody);
804 HRESULT ResolveURL(
805 [in] HBODY hRelated,
806 [in] LPCSTR pszBase,
807 [in] LPCSTR pszURL,
808 [in] DWORD dwFlags,
809 [out] LPHBODY phBody);
811 HRESULT ToMultipart(
812 [in] HBODY hBody,
813 [in] LPCSTR pszSubType,
814 [out] LPHBODY phMultipart);
816 HRESULT GetBodyOffsets(
817 [in] HBODY hBody,
818 [in, out] LPBODYOFFSETS pOffsets);
820 HRESULT GetCharset(
821 [out] LPHCHARSET phCharset);
823 HRESULT SetCharset(
824 [in] HCHARSET hCharset,
825 [in] CSETAPPLYTYPE applytype);
827 HRESULT IsBodyType(
828 [in] HBODY hBody,
829 [in] IMSGBODYTYPE bodytype);
831 HRESULT IsContentType(
832 [in] HBODY hBody,
833 [in] LPCSTR pszPriType,
834 [in] LPCSTR pszSubType);
836 HRESULT QueryBodyProp(
837 [in] HBODY hBody,
838 [in] LPCSTR pszName,
839 [in] LPCSTR pszCriteria,
840 [in] boolean fSubString,
841 [in] boolean fCaseSensitive);
843 HRESULT GetBodyProp(
844 [in] HBODY hBody,
845 [in] LPCSTR pszName,
846 [in] DWORD dwFlags,
847 [in, out] LPPROPVARIANT pValue);
849 HRESULT SetBodyProp(
850 [in] HBODY hBody,
851 [in] LPCSTR pszName,
852 [in] DWORD dwFlags,
853 [in] LPCPROPVARIANT pValue);
855 HRESULT DeleteBodyProp(
856 [in] HBODY hBody,
857 [in] LPCSTR pszName);
859 HRESULT SetOption(
860 [in] const TYPEDID oid,
861 [in] LPCPROPVARIANT pValue);
863 HRESULT GetOption(
864 [in] const TYPEDID oid,
865 [in, out] LPPROPVARIANT pValue);
869 uuid(fd853cd5-7f86-11d0-8252-00c04fd85ab4),
870 object
872 interface IMimeMessage : IMimeMessageTree
874 typedef [unique] IMimeMessage *LPMIMEMESSAGE;
876 typedef DWORD TEXTTYPE;
878 typedef enum tagIMSGFLAGS
880 IMF_ATTACHMENTS = 0x00000001,
881 IMF_MULTIPART = 0x00000002,
882 IMF_SUBMULTIPART = 0x00000004,
883 IMF_MIME = 0x00000008,
884 IMF_HTML = 0x00000010,
885 IMF_PLAIN = 0x00000020,
886 IMF_PARTIAL = 0x00000040,
887 IMF_SIGNED = 0x00000080,
888 IMF_ENCRYPTED = 0x00000100,
889 IMF_TNEF = 0x00000200,
890 IMF_MHTML = 0x00000400,
891 IMF_SECURE = 0x00000800,
892 IMF_TEXT = 0x00001000,
893 IMF_CSETTAGGED = 0x00002000,
894 IMF_NEWS = 0x00004000,
895 IMF_VOICEMAIL = 0x00008000,
896 IMF_HASVCARD = 0x00010000,
897 IMF_RFC1154 = 0x00020000,
898 } IMSGFLAGS;
900 typedef enum tagIMSGPRIORITY
902 IMSG_PRI_LOW = 5,
903 IMSG_PRI_NORMAL = 3,
904 IMSG_PRI_HIGH = 1,
905 } IMSGPRIORITY;
907 cpp_quote("#define WPF_HTML 0x00000001")
908 cpp_quote("#define WPF_AUTOINLINE 0x00000002")
909 cpp_quote("#define WPF_SLIDESHOW 0x00000004")
910 cpp_quote("#define WPF_ATTACHLINKS 0x00000008")
911 cpp_quote("#define WPF_IMAGESONLY 0x00000010")
912 cpp_quote("#define WPF_NOMETACHARSET 0x00000020")
914 typedef struct tagWEPAGEOPTIONS
916 DWORD cbSize;
917 DWORD dwFlags;
918 DWORD dwDelay;
919 WCHAR wchQuote;
920 } WEBPAGEOPTIONS, *LPWEBPAGEOPTIONS;
922 cpp_quote("#define TXT_PLAIN 1")
923 cpp_quote("#define TXT_HTML 2")
925 HRESULT CreateWebPage(
926 [in] IStream *pRootStm,
927 [in] LPWEBPAGEOPTIONS pOptions,
928 [in] IMimeMessageCallback *pCallback,
929 [out] IMoniker **ppMoniker);
931 HRESULT GetProp(
932 [in] LPCSTR pszName,
933 [in] DWORD dwFlags,
934 [in,out] LPPROPVARIANT pValue);
936 HRESULT SetProp(
937 [in] LPCSTR pszName,
938 [in] DWORD dwFlags,
939 [in] LPCPROPVARIANT pValue);
941 HRESULT DeleteProp(
942 [in] LPCSTR pszName);
944 HRESULT QueryProp(
945 [in] LPCSTR pszName,
946 [in] LPCSTR pszCriteria,
947 [in] boolean fSubString,
948 [in] boolean fCaseSensitive);
950 HRESULT GetTextBody(
951 [in] DWORD dwTxtType,
952 [in] ENCODINGTYPE ietEncoding,
953 [out] IStream **pStream,
954 [out] LPHBODY phBody);
956 HRESULT SetTextBody(
957 [in] DWORD dwTxtType,
958 [in] ENCODINGTYPE ietEncoding,
959 [in] HBODY hAlternative,
960 [in] IStream *pStream,
961 [out] LPHBODY phBody);
963 HRESULT AttachObject(
964 [in] REFIID riid,
965 [in, iid_is(riid)] void *pvObject,
966 [out] LPHBODY phBody);
968 HRESULT AttachFile(
969 [in] LPCSTR pszFilePath,
970 [in] IStream *pstmFile,
971 [out] LPHBODY phBody);
973 HRESULT AttachURL(
974 [in] LPCSTR pszBase,
975 [in] LPCSTR pszURL,
976 [in] DWORD dwFlags,
977 [in] IStream *pstmURL,
978 [out] LPSTR *ppszCIDURL,
979 [out] LPHBODY phBody);
981 HRESULT GetAttachments(
982 [out] ULONG *pcAttach,
983 [out] LPHBODY *pprghAttach);
985 HRESULT GetAddressTable(
986 [out] IMimeAddressTable **ppTable);
988 HRESULT GetSender(
989 [in, out] LPADDRESSPROPS pAddress);
991 HRESULT GetAddressTypes(
992 [in] DWORD dwAdrTypes,
993 [in] DWORD dwProps,
994 [in, out] LPADDRESSLIST pList);
996 HRESULT GetAddressFormat(
997 [in] DWORD dwAdrTypes,
998 [in] ADDRESSFORMAT format,
999 [out] LPSTR *ppszFormat);
1001 HRESULT EnumAddressTypes(
1002 [in] DWORD dwAdrTypes,
1003 [in] DWORD dwProps,
1004 [out] IMimeEnumAddressTypes **ppEnum);
1006 HRESULT SplitMessage(
1007 [in] ULONG cbMaxPart,
1008 [out] IMimeMessageParts **ppParts);
1010 HRESULT GetRootMoniker(
1011 [out] IMoniker **ppMoniker);
1015 uuid(761aa741-7bda-11d1-8aa9-00c04fb951f3),
1016 object
1018 interface IMimeMessageCallback : IUnknown
1020 HRESULT OnWebPageSplitter(
1021 [in] DWORD cInlined,
1022 [in] IStream *ppStream);
1026 uuid(de4ad8da-555f-11d1-8dd0-00c04fb951f9),
1027 object
1029 interface IPersistMime : IPersist
1031 /* FIXME: fill this in */
1035 uuid(c558834f-7f86-11d0-8252-00c04fd85ab4),
1036 object
1038 interface IMimeMessageParts : IUnknown
1040 /* FIXME: fill this in */
1044 uuid(c558834d-7f86-11d0-8252-00c04fd85ab4),
1045 object
1047 interface IMimeEnumHeaderRows : IUnknown
1049 typedef struct tagENUMHEADERROW
1051 HHEADERROW hRow;
1052 LPSTR pszHeader;
1053 LPSTR pszData;
1054 ULONG cchData;
1055 DWORD_PTR dwReserved;
1056 } ENUMHEADERROW, *LPENUMHEADERROW;
1058 /* FIXME: fill this in */
1062 uuid(fd853cee-7f86-11d0-8252-00c04fd85ab4),
1063 object
1065 interface IMimeEnumProperties : IUnknown
1067 typedef struct tagENUMPROPERTY
1069 LPSTR pszName;
1070 HHEADERROW hRow;
1071 DWORD dwPropId;
1072 } ENUMPROPERTY, *LPENUMPROPERTY;
1074 /* FIXME: fill this in */
1078 uuid(c5588354-7f86-11d0-8252-00c04fd85ab4),
1079 object
1081 interface IMimeEnumAddressTypes : IUnknown
1083 /* FIXME: fill this in */
1087 uuid(c5588350-7f86-11d0-8252-00c04fd85ab4),
1088 object
1090 interface IMimeEnumMessageParts : IUnknown
1092 /* FIXME: fill this in */
1096 uuid(64577981-86d7-11d1-bdfc-00c04fa31009),
1097 object
1099 interface IHashTable : IUnknown
1101 /* FIXME: fill this in */
1105 uuid(c5588351-7f86-11d0-8252-00c04fd85ab4),
1106 object
1108 interface IMimeAllocator : IMalloc
1110 typedef [unique] IMimeAllocator *LPMIMEALLOCATOR;
1112 HRESULT FreeParamInfoArray(
1113 [in] ULONG cParams,
1114 [in] LPMIMEPARAMINFO prgParam,
1115 [in] boolean fFreeArray);
1117 HRESULT FreeAddressList(
1118 [in,out] LPADDRESSLIST pList);
1120 HRESULT FreeAddressProps(
1121 [in,out] LPADDRESSPROPS pAddress);
1123 HRESULT ReleaseObjects(
1124 [in] ULONG cObjects,
1125 [in] IUnknown **prgpUnknown,
1126 [in] boolean fFreeArray);
1128 HRESULT FreeEnumHeaderRowArray(
1129 [in] ULONG cRows,
1130 [in] LPENUMHEADERROW prgRow,
1131 [in] boolean fFreeArray);
1133 HRESULT FreeEnumPropertyArray(
1134 [in] ULONG cProps,
1135 [in] LPENUMPROPERTY prgProp,
1136 [in] boolean fFreeArray);
1138 HRESULT FreeThumbprint(
1139 [in] THUMBBLOB *pthumbprint);
1141 HRESULT PropVariantClear(
1142 [in] LPPROPVARIANT pProp);
1147 uuid(feceaffd-c441-11d1-960e-00c04fbd7c09),
1148 object
1150 interface IMimeObjResolver : IUnknown
1152 /* FIXME: fill this in */
1156 uuid(b0d17fc2-7bc4-11d1-bdfa-00c04fa31009),
1157 object
1159 interface IFontCache : IUnknown
1161 /* FIXME: fill this in */
1165 uuid(b0d17fc5-7bc4-11d1-bdfa-00c04fa31009),
1166 object
1168 interface IFontCacheNotify : IUnknown
1170 /* FIXME: fill this in */
1174 uuid(70183210-7b36-11d2-8c12-00c04fa31009),
1175 object
1177 interface IMimeEditTag : IUnknown
1179 /* FIXME: fill this in */
1183 uuid(d09ee528-7b38-11d2-8c12-00c04fa31009),
1184 object
1186 interface IMimeEditTagCollection : IUnknown
1188 /* FIXME: fill this in */
1192 uuid(ba715ae0-a740-11d2-8b22-0080c76b34c6),
1193 local
1195 interface IMimeSecurityCallback : IUnknown
1197 /* FIXME: fill this in */
1199 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_UNKNOWN 0")
1200 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_KEYTRANS 1")
1201 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_KEYAGREE 2")
1202 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_MAIL_LIST 3")
1204 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_CERTIFICATE 0")
1205 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_KEYTRANS 1")
1206 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_PROVIDER 2")
1207 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_EPHEMERAL_KEYAGREE 3")
1208 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_STATIC_KEYAGREE 4")
1210 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_CERTIFICATE 0")
1211 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_ISSUERSERIAL 1")
1212 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_KEY_ID 2")
1217 cpp_quote("#ifdef __cplusplus")
1218 cpp_quote(" extern \"C\" {")
1219 cpp_quote("#endif")
1221 cpp_quote("")
1222 cpp_quote("HRESULT WINAPI MimeOleSetCompatMode(DWORD);")
1223 cpp_quote("HRESULT WINAPI MimeOleContentTypeFromUrl(LPCSTR,LPCSTR,LPSTR*);")
1224 cpp_quote("HRESULT WINAPI MimeOleParseMhtmlUrl(LPSTR,LPSTR*,LPSTR*);")
1225 cpp_quote("HRESULT WINAPI MimeOleObjectFromUrl(LPCSTR,BOOL,REFIID,LPVOID*,IUnknown**);")
1226 cpp_quote("HRESULT WINAPI MimeOleObjectFromMoniker(BINDF,IMoniker*,IBindCtx*,REFIID,LPVOID*,IMoniker**);")
1227 cpp_quote("HRESULT WINAPI MimeOleCombineURL(LPCSTR,ULONG,LPCSTR,ULONG,BOOL,LPSTR*);")
1228 cpp_quote("HRESULT WINAPI MimeOleGetSubjectFileName(IMimePropertySet*,ULONG*,ULONG*,LPSTR,ULONG);")
1229 cpp_quote("HRESULT WINAPI MimeOleCreateWebDocument(LPCSTR,LPCSTR,IMimeWebDocument**);")
1230 cpp_quote("HRESULT WINAPI MimeOleGetRelatedSection(IMimeMessageTree*,boolean,LPHBODY,boolean*);")
1231 cpp_quote("HRESULT WINAPI MimeOleGetMixedSection(IMimeMessageTree*,boolean,LPHBODY,boolean*);")
1232 cpp_quote("HRESULT WINAPI MimeOleGetAlternativeSection(IMimeMessageTree*,LPHBODY,boolean*);")
1233 cpp_quote("HRESULT WINAPI MimeOleGenerateCID(LPSTR,ULONG,boolean);")
1234 cpp_quote("HRESULT WINAPI MimeOleGenerateMID(LPSTR,ULONG,boolean);")
1235 cpp_quote("HRESULT WINAPI MimeOleCreateByteStream(IStream**);")
1236 cpp_quote("HRESULT WINAPI MimeOlGetPropertySchema(IMimePropertySchema**);")
1237 cpp_quote("HRESULT WINAPI MimeOleQueryString(LPCSTR,LPCSTR,boolean,boolean);")
1238 cpp_quote("HRESULT WINAPI MimeOleGetPropA(IMimePropertySet*,LPCSTR,DWORD,LPSTR*);")
1239 cpp_quote("HRESULT WINAPI MimeOleSetPropA(IMimePropertySet*,LPCSTR,DWORD,LPCSTR);")
1240 cpp_quote("HRESULT WINAPI MimeOleGetPropW(IMimePropertySet*,LPCSTR,DWORD,LPWSTR*);")
1241 cpp_quote("HRESULT WINAPI MimeOleSetPropW(IMimePropertySet*,LPCSTR,DWORD,LPCWSTR);")
1242 cpp_quote("HRESULT WINAPI MimeOleGetBodyPropA(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPSTR*);")
1243 cpp_quote("HRESULT WINAPI MimeOleSetBodyPropA(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPCSTR);")
1244 cpp_quote("HRESULT WINAPI MimeOleGetBodyPropW(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPWSTR*);")
1245 cpp_quote("HRESULT WINAPI MimeOleSetBodyPropW(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPCWSTR);")
1246 cpp_quote("HRESULT WINAPI MimeOleCreateHeaderTable(IMimeHeaderTable**);")
1247 cpp_quote("HRESULT WINAPI MimeOleVariantFree(LPPROPVARIANT);")
1248 cpp_quote("HRESULT WINAPI MimeOleVariantCopy(LPPROPVARIANT,LPPROPVARIANT);")
1249 cpp_quote("HRESULT WINAPI MimeOleGetExtClassId(LPCSTR,LPCLSID);")
1250 cpp_quote("HRESULT WINAPI MimeOleEncodeHeader(HCHARSET,LPPROPVARIANT,LPSTR*,LPRFC1522INFO);")
1251 cpp_quote("HRESULT WINAPI MimeOleDecodeHeader(HCHARSET,LPCSTR,LPPROPVARIANT,LPRFC1522INFO);")
1252 cpp_quote("HRESULT WINAPI MimeOleRfc1522Decode(LPCSTR,LPSTR,ULONG,LPSTR*);")
1253 cpp_quote("HRESULT WINAPI MimeOleRfc1522Encode(LPCSTR,HCHARSET,LPSTR*);")
1254 cpp_quote("HRESULT WINAPI MimeOleGetInternat(IMimeInternational**);")
1255 cpp_quote("HRESULT WINAPI MimeOleFindCharset(LPCSTR,LPHCHARSET);")
1256 cpp_quote("HRESULT WINAPI MimeOleGetCharsetInfo(HCHARSET,LPINETCSETINFO);")
1257 cpp_quote("HRESULT WINAPI MimeOleGetCodePageInfo(HCHARSET,LPCODEPAGEINFO);")
1258 cpp_quote("HRESULT WINAPI MimeOleGetDefaultCharset(LPHCHARSET);")
1259 cpp_quote("HRESULT WINAPI MimeOleSetDefaultCharset(HCHARSET);")
1260 cpp_quote("HRESULT WINAPI MimeOleGetCodePageCharset(CODEPAGEID,CHARSETTYPE,LPHCHARSET);")
1261 cpp_quote("HRESULT WINAPI MimeOleCreateVirtualStream(IStream**);")
1262 cpp_quote("HRESULT WINAPI MimeOleOpenFileStream(LPCSTR,DWORD,DWORD,IStream**);")
1263 cpp_quote("HRESULT WINAPI MimeOleIsTnefStream(IStream*);")
1264 cpp_quote("HRESULT WINAPI MimeOleGenerateFileName(LPCSTR,LPCSTR,LPCSTR,LPSTR*);")
1265 cpp_quote("HRESULT WINAPI MimeOleGetFileExtension(LPCSTR,LPSTR,ULONG);")
1266 cpp_quote("HRESULT WINAPI MimeOleCreateSecurity(IMimeSecurity**);")
1267 cpp_quote("HRESULT WINAPI MimeOleInetDateToFileTime(LPCSTR,LPFILETIME);")
1268 cpp_quote("HRESULT WINAPI MimeOleFileTimeToInetDate(LPFILETIME,LPSTR,ULONG);")
1269 cpp_quote("HRESULT WINAPI MimeOleCreateMessageParts(IMimeMessageParts**);")
1270 cpp_quote("HRESULT WINAPI MimeOleGetAllocator(IMimeAllocator**);")
1271 cpp_quote("HRESULT WINAPI MimeOleParseRfc822Address(DWORD,ENCODINGTYPE,LPCSTR,LPADDRESSLIST);")
1272 cpp_quote("HRESULT WINAPI MimeOleCreateMessage(IUnknown*,IMimeMessage**);")
1273 cpp_quote("HRESULT WINAPI MimeOleMergePartialHeaders(IStream*,IStream*);")
1274 cpp_quote("HRESULT WINAPI MimeOleEscapeString(CODEPAGEID,LPCSTR,LPSTR*);")
1275 cpp_quote("HRESULT WINAPI MimeOleGetExtContentType(LPCSTR,LPSTR*);")
1276 cpp_quote("HRESULT WINAPI MimeOleGetContentTypeExt(LPCSTR,LPSTR*);")
1277 cpp_quote("HRESULT WINAPI MimeOleGetFileInfo(LPSTR,LPSTR*,LPSTR*,LPSTR*,LPSTR*,LPSTR*);")
1278 cpp_quote("HRESULT WINAPI MimeOleCreateBody(IMimeBody**);")
1279 cpp_quote("HRESULT WINAPI MimeOleCreatePropertySet(IUnknown*,IMimePropertySet**);")
1280 cpp_quote("HRESULT WINAPI MimeOleCreateMessageTree(IUnknown*,IMimeMessageTree**);")
1281 cpp_quote("HRESULT WINAPI MimeOleGetCertsFromThumbprints(THUMBBLOB*,X509CERTRESULT*,const HCERTSTORE*,DWORD);")
1282 cpp_quote("HRESULT WINAPI MimeOleSplitMessage(IMimeMessage*,ULONG,IMimeMessageParts**);")
1283 cpp_quote("HRESULT WINAPI MimeOleClearDirtyTree(IMimeMessageTree*);")
1284 cpp_quote("HRESULT WINAPI MimeOleConvertEnrichedToHTML(CODEPAGEID,IStream*,IStream*);")
1285 cpp_quote("HRESULT WINAPI MimeOleSMimeCapsToDlg(LPBYTE,DWORD,DWORD,PCX509CERT*,HWND,DWORD,DWORD,DWORD);")
1286 cpp_quote("HRESULT WINAPI MimeOleSMimeCapsFromDlg(HWND,DWORD,DWORD,DWORD,LPBYTE,DWORD*);")
1287 cpp_quote("HRESULT WINAPI MimeOleSMimeCapInit(LPBYTE,DWORD,LPVOID*);")
1288 cpp_quote("HRESULT WINAPI MimeOleSMimeCapAddSMimeCap(LPBYTE,DWORD,LPVOID);")
1289 cpp_quote("HRESULT WINAPI MimeOleSMimeCapAddCert(LPBYTE,DWORD,BOOL,LPVOID);")
1290 cpp_quote("HRESULT WINAPI MimeOleSMimeCapGetEncAlg(LPVOID,LPBYTE,DWORD*,DWORD*);")
1291 cpp_quote("HRESULT WINAPI MimeOleSMimeCapGetHashAlg(LPVOID,LPBYTE,DWORD*,DWORD*);")
1292 cpp_quote("HRESULT WINAPI MimeOleSMimeCapRelease(LPVOID);")
1293 cpp_quote("HRESULT WINAPI MimeOleAlgNameFromSMimeap(LPBYTE,DWORD,LPCSTR*);")
1294 cpp_quote("HRESULT WINAPI MimeOleAlgStrengthFromSMimeCap(LPBYTE,DWORD,BOOL,DWORD*);")
1295 cpp_quote("HRESULT WINAPI MimeOleSMimeCapsFull(LPVOID,BOOL,BOOL,LPBYTE,DWORD*);")
1296 cpp_quote("HRESULT WINAPI MimeOleCreateHashTable(DWORD,BOOL,IHashTable**);")
1297 cpp_quote("HRESULT WINAPI MimeOleStripHeaders(IMimeMessage*,HBODY,LPCSTR,LPCSTR,IStream**);")
1299 cpp_quote("HRESULT WINAPI MimeEditViewSource(HWND,IMimeMessage*);")
1300 cpp_quote("HRESULT WINAPI MimeEditIsSafeToRun(HWND,LPCSTR);")
1301 cpp_quote("HRESULT WINAPI MimeEditVerifyTrust(HWND,LPCSTR,LPCSTR);")
1302 cpp_quote("HRESULT WINAPI MimeEditCreateMimeDocument(IUnknown*,IMimeMessage*,DWORD,IMimeMessage**);")
1303 cpp_quote("HRESULT WINAPI MimeEditGetBackgroundImageUrl(IUnknown*,BSTR*);")
1304 cpp_quote("HRESULT WINAPI MimeEditDocumentFromStream(IStream*,REFIID,void**);")
1306 cpp_quote("#ifdef __cplusplus")
1307 cpp_quote("}")
1308 cpp_quote("#endif")