VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/mimeole.idl@ 33876

Last change on this file since 33876 was 33656, checked in by vboxsync, 14 years ago

*: rebrand Sun (L)GPL disclaimers

  • Property svn:eol-style set to native
File size: 44.5 KB
Line 
1/*
2 * Copyright 2007 Robert Shearman for CodeWeavers
3 *
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.
8 *
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.
13 *
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
17 */
18
19/*
20 * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
21 * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
22 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
23 * a choice of LGPL license versions is made available with the language indicating
24 * that LGPLv2 or any later version may be used, or where a choice of which version
25 * of the LGPL is applied is otherwise unspecified.
26 */
27
28import "ocidl.idl";
29import "objidl.idl";
30import "propidl.idl";
31
32#define DECLARE_HANDLE(name) typedef void *name
33
34interface IMimeMessageCallback;
35interface IMimeEnumAddressTypes;
36interface IMimeMessageParts;
37interface IMimeMessageTree;
38interface IMimeBody;
39interface IMimeEnumProperties;
40
41cpp_quote("DEFINE_GUID(CLSID_IMimeBody, 0xfd853cdb, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
42cpp_quote("DEFINE_GUID(CLSID_IMimeAllocator, 0xfd853cdd, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
43cpp_quote("DEFINE_GUID(CLSID_IMimeMessage, 0xfd853ce3, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
44cpp_quote("DEFINE_GUID(CLSID_IMimeSecurity, 0xfd853cde, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
45cpp_quote("DEFINE_GUID(CLSID_IVirtualStream, 0xfd853cdf, 0x7f86, 0x11d0, 0x82, 0x52, 0x0, 0xc0, 0x4f, 0xd8, 0x5a, 0xb4);")
46
47cpp_quote("#define MIME_E_REG_CREATE_KEY 0x800cce01")
48cpp_quote("#define MIME_E_REG_QUERY_INFO 0x800cce02")
49cpp_quote("#define MIME_E_INVALID_ENCTYPE 0x800cce03")
50cpp_quote("#define MIME_E_BOUNDARY_MISMATCH 0x800cce04")
51cpp_quote("#define MIME_E_NOT_FOUND 0x800cce05")
52cpp_quote("#define MIME_E_NO_DATA 0x800cce05")
53cpp_quote("#define MIME_E_BUFFER_TOO_SMALL 0x800cce06")
54cpp_quote("#define MIME_E_INVALID_ITEM_FLAGS 0x800cce07")
55cpp_quote("#define MIME_E_ONE_LINE_ITEME 0x800cce08")
56cpp_quote("#define MIME_E_INVALID_HANDLE 0x800cce09")
57cpp_quote("#define MIME_E_CHARSET_TRANSLATE 0x800cce0a")
58cpp_quote("#define MIME_E_NOT_INITIALIZED 0x800cce0b")
59
60cpp_quote("#define MIME_E_INVALID_CHARSET_TYPE 0x800cce31")
61
62cpp_quote("#define MIME_E_INVALID_TEXT_TYPE 0x800cce38")
63
64cpp_quote("#define MIME_E_SECURITY_NOOP 0x800cceb1")
65cpp_quote("#define MIME_S_SECURITY_NOOP 0x000cceb1")
66
67cpp_quote("typedef enum tagMIMEPROPID {")
68cpp_quote(" PID_HDR_NEWSGROUP = 2,")
69cpp_quote(" PID_HDR_NEWSGROUPS = 3,")
70cpp_quote(" PID_HDR_REFS = 4,")
71cpp_quote(" PID_HDR_SUBJECT = 5,")
72cpp_quote(" PID_HDR_FROM = 6,")
73cpp_quote(" PID_HDR_MESSAGEID = 7,")
74cpp_quote(" PID_HDR_RETURNPATH = 8,")
75cpp_quote(" PID_HDR_RR = 9,")
76cpp_quote(" PID_HDR_RETRCPTO = 10,")
77cpp_quote(" PID_HDR_APPARTO = 11,")
78cpp_quote(" PID_HDR_DATE = 12,")
79cpp_quote(" PID_HDR_RECEIVED = 13,")
80cpp_quote(" PID_HDR_REPLYTO = 14,")
81cpp_quote(" PID_HDR_XMAILER = 15,")
82cpp_quote(" PID_HDR_BCC = 16,")
83cpp_quote(" PID_HDR_MIMEVER = 17,")
84cpp_quote(" PID_HDR_CNTTYPE = 18,")
85cpp_quote(" PID_HDR_CNTXFER = 19,")
86cpp_quote(" PID_HDR_CNTID = 20,")
87cpp_quote(" PID_HDR_CNTDESC = 21,")
88cpp_quote(" PID_HDR_CNTDISP = 22,")
89cpp_quote(" PID_HDR_CNTBASE = 23,")
90cpp_quote(" PID_HDR_CNTLOC = 24,")
91cpp_quote(" PID_HDR_TO = 25,")
92cpp_quote(" PID_HDR_PATH = 26,")
93cpp_quote(" PID_HDR_FOLLOWUPTO = 27,")
94cpp_quote(" PID_HDR_EXPIRES = 28,")
95cpp_quote(" PID_HDR_CC = 29,")
96
97cpp_quote(" PID_HDR_SENDER = 61,")
98
99cpp_quote(" PID_HDR_INREPLYTO = 77,")
100cpp_quote("} MIMEPROPID;")
101
102cpp_quote("#define TYPEDID_MASK ((ULONG)0xffff)")
103cpp_quote("#define TYPEDID_TYPE(t) ((VARTYPE)((t) & TYPEDID_MASK))")
104
105cpp_quote("#define OID_HIDE_TNEF_ATTACHMENTS (0x000e0000 | VT_BOOL)")
106cpp_quote("#define OID_SECURITY_TYPE (0x00180000 | VT_UI4)")
107cpp_quote("#define OID_SECURITY_HWND_OWNER (0x00320000 | VT_UI4)")
108cpp_quote("#define OID_HEADER_RELOAD_TYPE (0x00370000 | VT_UI4)")
109cpp_quote("#define OID_SHOW_MACBINARY (0x00390000 | VT_BOOL)")
110
111
112[
113 uuid(e4b28371-83b0-11d0-8259-00c04fd85ab4),
114 version(1.0)
115]
116library MIMEOLE
117{
118 importlib("stdole2.tlb");
119
120 DECLARE_HANDLE(HCHARSET);
121 DECLARE_HANDLE(HBODY);
122 DECLARE_HANDLE(HHEADERROW);
123
124 typedef HCHARSET *LPHCHARSET;
125 typedef HBODY *LPHBODY;
126 typedef HHEADERROW *LPHHEADERROW;
127 typedef DWORD TYPEDID;
128 typedef const PROPVARIANT *LPCPROPVARIANT;
129 typedef const BLOB *LPCBLOB;
130
131 typedef enum tagRELOADTYPE
132 {
133 RELOAD_HEADER_NONE,
134 RELOAD_HEADER_RESET,
135 RELOAD_HEADER_APPEND,
136 RELOAD_HEADER_REPLACE,
137 } RELOADTYPE;
138
139 typedef enum tagMIMESAVETYPE
140 {
141 SAVE_RFC822,
142 SAVE_RFC1521,
143 } MIMESAVETYPE;
144
145 typedef enum tagCSETAPPLYTYPE
146 {
147 CSET_APPLY_UNTAGGED,
148 CSET_APPLY_ALL,
149 CSET_APPLY_TAG_ALL,
150 } CSETAPPLYTYPE;
151
152 typedef enum tagENCODINGTYPE
153 {
154 IET_BINARY,
155 IET_BASE64,
156 IET_UUENCODE,
157 IET_QP,
158 IET_7BIT,
159 IET_8BIT,
160 IET_INETCSET,
161 IET_UNICODE,
162 IET_RFC1522,
163 IET_ENCODED,
164 IET_CURRENT,
165 IET_UNKNOWN,
166 IET_BINHEX40,
167 IET_LAST
168 } ENCODINGTYPE;
169
170 const SHORT IET_DECODED = IET_BINARY;
171
172 const SHORT CCHMAX_HEADER_LINE = 1000;
173
174 [
175 uuid(c5588349-7f86-11d0-8252-00c04fd85ab4),
176 object
177 ]
178 interface IMimeInternational : IUnknown
179 {
180 typedef [unique] IMimeInternational *LPMIMEINTERNATIONAL;
181 typedef DWORD CODEPAGEID;
182
183 const CODEPAGEID CP_USASCII = 1252;
184 const CODEPAGEID CP_UNICODE = 1200;
185 const CODEPAGEID CP_JAUTODETECT = 50932;
186 const CODEPAGEID CP_KAUTODETECT = 50949;
187 const CODEPAGEID CP_ISO2022JPESC = 50221;
188 const CODEPAGEID CP_ISO2022JPSIO = 50222;
189
190 const SHORT CCHMAX_CSET_NAME = 128;
191 const SHORT CCHMAX_LANG_NAME = 128;
192 const SHORT CCHMAX_FACE_NAME = 128;
193
194 typedef struct tagINETCSETINFO
195 {
196 CHAR szName[CCHMAX_CSET_NAME];
197 HCHARSET hCharset;
198 CODEPAGEID cpiWindows;
199 CODEPAGEID cpiInternet;
200 DWORD dwReserved1;
201 } INETCSETINFO, *LPINETCSETINFO;
202
203 typedef enum tagINETLANGMASK
204 {
205 ILM_FAMILY = 0x01,
206 ILM_NAME = 0x02,
207 ILM_BODYCSET = 0x04,
208 ILM_HEADERCSET = 0x08,
209 ILM_WEBCSET = 0x10,
210 ILM_FIXEDFONT = 0x20,
211 ILM_VARIABLEFONT = 0x40,
212 } INETLANGMASK;
213
214 typedef struct tagCODEPAGEINFO
215 {
216 DWORD dwMask;
217 CODEPAGEID cpiCodePage;
218 BOOL fIsValidCodePage;
219 ULONG ulMaxCharSize;
220 BOOL fInternetCP;
221 CODEPAGEID cpiFamily;
222 CHAR szName[CCHMAX_LANG_NAME];
223 CHAR szBodyCset[CCHMAX_CSET_NAME];
224 CHAR szHeaderCset[CCHMAX_CSET_NAME];
225 CHAR szWebCset[CCHMAX_CSET_NAME];
226 CHAR szFixedFont[CCHMAX_FACE_NAME];
227 CHAR szVariableFont[CCHMAX_FACE_NAME];
228 ENCODINGTYPE ietNewsDefault;
229 ENCODINGTYPE ietMailDefault;
230 DWORD dwReserved1;
231 } CODEPAGEINFO, *LPCODEPAGEINFO;
232
233 typedef struct tagRFC1522INFO
234 {
235 BOOL fRfc1522Allowed;
236 BOOL fRfc1522Used;
237 BOOL fAllow8bit;
238 HCHARSET hRfc1522Cset;
239 } RFC1522INFO, *LPRFC1522INFO;
240
241 typedef enum tagCHARSETTYPE
242 {
243 CHARSET_BODY,
244 CHARSET_HEADER,
245 CHARSET_WEB,
246 } CHARSETTYPE;
247
248
249 HRESULT SetDefaultCharset(
250 [in] HCHARSET hCharset);
251 HRESULT GetDefaultCharset(
252 [out] LPHCHARSET phCharset);
253 HRESULT GetCodePageCharset(
254 [in] CODEPAGEID cpiCodePage,
255 [in] CHARSETTYPE ctCsetType,
256 [out] LPHCHARSET phCharset);
257 HRESULT FindCharset(
258 [in] LPCSTR pszCharset,
259 [out] LPHCHARSET phCharset);
260 HRESULT GetCharsetInfo(
261 [in] HCHARSET hCharset,
262 [in, out] LPINETCSETINFO pCsetInfo);
263 HRESULT GetCodePageInfo(
264 [in] CODEPAGEID cpiCodePage,
265 [in, out] LPCODEPAGEINFO pCodePageInfo);
266 HRESULT CanConvertCodePages(
267 [in] CODEPAGEID cpiSource,
268 [in] CODEPAGEID cpiDest);
269 HRESULT DecodeHeader(
270 [in] HCHARSET hCharset,
271 [in] LPCSTR pszData,
272 [in, out] LPPROPVARIANT pDecoded,
273 [in, out] LPRFC1522INFO pRfc1522Info);
274 HRESULT EncodeHeader(
275 [in] HCHARSET hCharset,
276 [in] LPPROPVARIANT pData,
277 [out] LPSTR *ppszEncoded,
278 [in, out] LPRFC1522INFO pRfc1522Info);
279 HRESULT ConvertBuffer(
280 [in] CODEPAGEID cpiSource,
281 [in] CODEPAGEID cpiDest,
282 [in] LPBLOB pIn,
283 [in, out] LPBLOB pOut,
284 [out] ULONG *pcbRead);
285 HRESULT ConvertString(
286 [in] CODEPAGEID cpiSource,
287 [in] CODEPAGEID cpiDest,
288 [in] LPPROPVARIANT pIn,
289 [in, out] LPPROPVARIANT pOut);
290 HRESULT MLANG_ConvertInetReset(void);
291 HRESULT MLANG_ConvertInetString(
292 [in] CODEPAGEID cpiSource,
293 [in] CODEPAGEID cpiDest,
294 [in] LPCSTR pSource,
295 [in] int *pnSizeOfSource,
296 [in,out,unique] LPSTR pDestination,
297 [in] int *pnDstSize);
298 HRESULT Rfc1522Decode(
299 [in] LPCSTR pszValue,
300 [in,ref] LPSTR pszCharset,
301 [in] ULONG cchmax,
302 [out] LPSTR *ppszDecoded);
303 HRESULT Rfc1522Encode(
304 [in] LPCSTR pszValue,
305 [in] HCHARSET hCharset,
306 [out] LPSTR *ppszEncoded);
307 }
308
309 [
310 uuid(c5588353-7f86-11d0-8252-00c04fd85ab4),
311 object
312 ]
313 interface IMimeSecurity : IUnknown
314 {
315 typedef [unique] IMimeSecurity *LPMIMESECURITY;
316
317 cpp_quote("#ifdef __WINE_WINCRYPT_H")
318 cpp_quote("typedef PCCERT_CONTEXT PCX509CERT;")
319 cpp_quote("#else")
320 typedef const void *PCX509CERT;
321 typedef void *HCERTSTORE;
322 cpp_quote("#endif")
323
324 typedef BLOB THUMBBLOB;
325 typedef void *HCAPICERTSTORE;
326
327 cpp_quote("#define MST_NONE 0x00000000")
328 cpp_quote("#define MST_THIS_SIGN 0x00000001")
329 cpp_quote("#define MST_THIS_ENCRYPT 0x00000002")
330 cpp_quote("#define MST_BLOB_FLAG 0x00000004")
331 cpp_quote("#define MST_THIS_BLOBSIGN (MST_BLOB_FLAG | MST_THIS_SIGN)")
332 cpp_quote("#define MST_CHILD_SIGN 0x00000100")
333 cpp_quote("#define MST_CHILD_ENCRYPT 0x00000200")
334 cpp_quote("#define MST_SUBMSG_SIGN 0x00001000")
335 cpp_quote("#define MST_SUBMSG_ENCRYPT 0x00002000")
336 cpp_quote("#define MST_RECEIPT_REQUEST 0x00010000")
337 cpp_quote("#define MST_CLASS_SMIME_V1 0x00000000")
338 cpp_quote("#define MST_CLASS_PGP 0x01000000")
339
340 typedef enum tagCERTSTATE
341 {
342 CERTIFICATE_OK,
343 CERTIFICATE_NOT_PRESENT,
344 CERTIFICATE_EXPIRED,
345 CERTIFICATE_CHAIN_TOO_LONG,
346 CERTIFICATE_MISSING_ISSUER,
347 CERTIFICATE_CRL_LISTED,
348 CERTIFICATE_NOT_TRUSTED,
349 CERTIFICATE_INVALID,
350 CERTIFICATE_ERROR,
351 CERTIFICATE_NOPRINT,
352 CERTIFICATE_UNKNOWN
353 } CERTSTATE;
354
355 typedef enum tagCERTNAMETYPE
356 {
357 SIMPLE,
358 OID,
359 X500,
360 } CERTNAMETYPE;
361
362 typedef enum tagCERTDATAID
363 {
364 CDID_EMAIL,
365 CDID_MAX
366 } CERTDATAID;
367
368 typedef struct tagX509CERTRESULT
369 {
370 DWORD cEntries;
371 CERTSTATE *rgcs;
372 PCX509CERT *rgpCert;
373 } X509CERTRESULT, *PX509CERTRESULT;
374 typedef const X509CERTRESULT *PCX509CERTRESULT;
375
376 HRESULT InitNew(void);
377
378 HRESULT CheckInit(void);
379
380 HRESULT EncodeMessage(
381 [in] IMimeMessageTree */*const*/ pTree,
382 [in] DWORD dwFlags);
383
384 HRESULT EncodeBody(
385 [in] IMimeMessageTree */*const*/ pTree,
386 [in] HBODY hEncodeRoot,
387 [in] DWORD dwFlags);
388
389 HRESULT DecodeMessage(
390 [in] IMimeMessageTree */*const*/ pTree,
391 [in] DWORD dwFlags);
392
393 HRESULT DecodeBody(
394 [in] IMimeMessageTree */*const*/ pTree,
395 [in] HBODY hDecodeRoot,
396 [in] DWORD dwFlags);
397
398 HRESULT EnumCertificates(
399 [in] HCAPICERTSTORE hc,
400 [in] DWORD dwUsage,
401 [in] PCX509CERT pPrev,
402 [out] PCX509CERT *ppCert);
403
404 HRESULT GetCertificateName(
405 [in] const PCX509CERT pX509Cert,
406 [in] const CERTNAMETYPE cn,
407 [out] LPSTR *ppszName);
408
409 HRESULT GetMessageType(
410 [in] const HWND hwndParent,
411 [in] IMimeBody */*const*/ pBody,
412 [out] DWORD */*const*/ pdwSecType);
413
414 HRESULT GetCertData(
415 [in] const PCX509CERT pX509Cert,
416 [in] const CERTDATAID dataid,
417 [out, ref] LPPROPVARIANT pValue);
418 }
419
420 [
421 uuid(fd853cd1-7f86-11d0-8252-00c04fd85ab4),
422 object
423 ]
424 interface IMimeHeaderTable : IPersistStream
425 {
426 /* FIXME: fill this in */
427 }
428
429 [
430 uuid(fd853cec-7f86-11d0-8252-00c04fd85ab4),
431 object
432 ]
433 interface IMimePropertySchema : IUnknown
434 {
435 typedef enum tagMIMEPROPFLAGS
436 {
437 MPF_INETCSET = 0x01,
438 MPF_RFC1522 = 0x02,
439 MPF_ADDRESS = 0x04,
440 MPF_HASPARAMS = 0x08,
441 MPF_MIME = 0x10,
442 MPF_READONLY = 0x20
443 } MIMEPROPFLAGS;
444
445 /* FIXME: fill this in */
446 }
447
448 [
449 uuid(fd853cd3-7f86-11d0-8252-00c04fd85ab4),
450 object
451 ]
452 interface IMimePropertySet : IPersistStreamInit
453 {
454 typedef [unique] IMimePropertySet *LPMIMEPROPERTYSET;
455
456 cpp_quote("#define PDF_ENCODED 0x00000001")
457 cpp_quote("#define PDF_NAMEINDATA 0x00000002")
458 cpp_quote("#define PDF_HEADERFORMAT (0x00000004 | PDF_ENCODED)")
459 cpp_quote("#define PDF_NOCOMMENTS 0x00000008")
460 cpp_quote("#define PDF_SAVENOENCODE 0x00000010")
461 cpp_quote("#define PDF_VECTOR 0x00000020")
462
463 typedef struct tagMIMEPARAMINFO
464 {
465 LPSTR pszName;
466 LPSTR pszData;
467 } MIMEPARAMINFO, *LPMIMEPARAMINFO;
468
469 typedef enum tagPROPINFOMASK
470 {
471 PIM_CHARSET = 0x01,
472 PIM_ENCODINGTYPE = 0x02,
473 PIM_ROWNUMBER = 0x04,
474 PIM_FLAGS = 0x08,
475 PIM_PROPID = 0x10,
476 PIM_VALUES = 0x20,
477 PIM_VTDEFAULT = 0x40,
478 PIM_VTCURRENT = 0x80
479 } PROPINFOMASK;
480
481 typedef struct tagMIMEPROPINFO
482 {
483 DWORD dwMask;
484 HCHARSET hCharset;
485 ENCODINGTYPE ietEncoding;
486 DWORD dwRowNumber;
487 DWORD dwFlags;
488 DWORD dwPropId;
489 DWORD cValues;
490 VARTYPE vtDefault;
491 VARTYPE vtCurrent;
492 } MIMEPROPINFO, *LPMIMEPROPINFO;
493 typedef const MIMEPROPINFO *LPCMIMEPROPINFO;
494
495 HRESULT GetPropInfo(
496 [in] LPCSTR pszName,
497 [in,out] LPMIMEPROPINFO pInfo);
498
499 HRESULT SetPropInfo(
500 [in] LPCSTR pszName,
501 [in] LPCMIMEPROPINFO pInfo);
502
503cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
504cpp_quote("#undef GetProp")
505cpp_quote("#undef SetProp")
506cpp_quote("#undef EnumProps")
507cpp_quote("#endif")
508 HRESULT GetProp(
509 [in] LPCSTR pszName,
510 [in] DWORD dwFlags,
511 [in,out] LPPROPVARIANT pValue);
512
513 HRESULT SetProp(
514 [in] LPCSTR pszName,
515 [in] DWORD dwFlags,
516 [in] LPCPROPVARIANT pValue);
517
518 HRESULT AppendProp(
519 [in] LPCSTR pszName,
520 [in] DWORD dwFlags,
521 [in] LPPROPVARIANT pValue);
522
523 HRESULT DeleteProp(
524 [in] LPCSTR pszName);
525
526 HRESULT CopyProps(
527 [in] ULONG cNames,
528 [in,unique] LPCSTR *prgszName,
529 [in] IMimePropertySet *pPropertySet);
530
531 HRESULT MoveProps(
532 [in] ULONG cNames,
533 [in] LPCSTR *prgszName,
534 [in] IMimePropertySet *pPropertySet);
535
536 HRESULT DeleteExcept(
537 [in] ULONG cNames,
538 [in] LPCSTR *prgszName);
539
540 HRESULT QueryProp(
541 [in] LPCSTR pszName,
542 [in] LPCSTR pszCriteria,
543 [in] boolean fSubString,
544 [in] boolean fCaseSensitive);
545
546 HRESULT GetCharset(
547 [out] LPHCHARSET phCharset);
548
549 HRESULT SetCharset(
550 [in] HCHARSET hCharset,
551 [in] CSETAPPLYTYPE applytype);
552
553 HRESULT GetParameters(
554 [in] LPCSTR pszName,
555 [out] ULONG *pcParams,
556 [out] LPMIMEPARAMINFO *pprgParam);
557
558 HRESULT IsContentType(
559 [in] LPCSTR pszPriType,
560 [in,unique] LPCSTR pszSubType);
561
562 HRESULT BindToObject(
563 [in] REFIID riid,
564 [out,iid_is(riid)] void **ppvObject);
565
566 HRESULT Clone(
567 [out] IMimePropertySet **ppPropertySet);
568
569 HRESULT SetOption(
570 [in] const TYPEDID oid,
571 [in] LPCPROPVARIANT pValue);
572
573 HRESULT GetOption(
574 [in] const TYPEDID oid,
575 [in,out] LPPROPVARIANT pValue);
576
577 cpp_quote("#define EPF_NONAME 0x00000001")
578
579 HRESULT EnumProps(
580 [in] DWORD dwFlags,
581 [out] IMimeEnumProperties **ppEnum);
582
583 }
584
585 [
586 uuid(c558834a-7f86-11d0-8252-00c04fd85ab4),
587 object
588 ]
589 interface IMimeAddressTable : IUnknown
590 {
591 typedef [unique] IMimeAddressTable *LPMIMEADDRESSTABLE;
592
593 DECLARE_HANDLE(HADDRESS);
594 typedef HADDRESS *LPHADDRESS;
595 typedef DWORD IADDRESSTYPE;
596
597 typedef enum tagADDRESSFORMAT
598 {
599 AFT_DISPLAY_FRIENDLY,
600 AFT_DISPLAY_EMAIL,
601 AFT_DISPLAY_BOTH,
602 AFT_RFC822_DECODED,
603 AFT_RFC822_ENCODED,
604 AFT_RFC822_TRANSMIT,
605 } ADDRESSFORMAT;
606
607 typedef struct tagADDRESSPROPS
608 {
609 DWORD dwProps;
610 HADDRESS hAddress;
611 ENCODINGTYPE ietFriendly;
612 HCHARSET hCharset;
613 DWORD dwAdrType;
614 LPSTR pszFriendly;
615 LPWSTR pwszReserved;
616 LPSTR pszEmail;
617 CERTSTATE certstate;
618 THUMBBLOB tbSigning;
619 THUMBBLOB tbEncryption;
620 DWORD dwCookie;
621 DWORD dwReserved1;
622 DWORD dwReserved2;
623 } ADRESSPROPS, *LPADDRESSPROPS;
624
625 typedef struct tagADDRESSLIST
626 {
627 ULONG cAdrs;
628 LPADDRESSPROPS prgAdr;
629 } ADDRESSLIST, *LPADDRESSLIST;
630
631 /* FIXME: fill this in */
632 }
633
634 [
635 uuid(ee519f11-851a-11d0-8252-00c04fd85ab4),
636 object
637 ]
638 interface IMimeWebDocument : IUnknown
639 {
640 /* FIXME: fill this in */
641 }
642
643 [
644 uuid(c558834c-7f86-11d0-8252-00c04fd85ab4),
645 object
646 ]
647 interface IMimeBody : IMimePropertySet
648 {
649 typedef [unique] IMimeBody *LPMIMEBODY;
650
651 typedef enum tagIMSGBODYTYPE
652 {
653 IBT_SECURE,
654 IBT_ATTACHMENT,
655 IBT_EMPTY,
656 IBT_CSETTAGGED,
657 IBT_AUTOATTACH,
658 } IMSGBODYTYPE;
659
660 typedef struct tagBODYOFFSETS
661 {
662 DWORD cbBoundaryStart;
663 DWORD cbHeaderStart;
664 DWORD cbBodyStart;
665 DWORD cbBodyEnd;
666 } BODYOFFSETS, *LPBODYOFFSETS;
667
668 typedef struct tagTRANSMITINFO
669 {
670 ENCODINGTYPE ietCurrent;
671 ENCODINGTYPE ietXmitMime;
672 ENCODINGTYPE ietXmit822;
673 ULONG cbLongestLine;
674 ULONG cExtended;
675 ULONG ulPercentExt;
676 ULONG cbSize;
677 ULONG cLines;
678 } TRANSMITINFO, *LPTRANSMITINFO;
679
680 HRESULT IsType(
681 [in] IMSGBODYTYPE bodytype);
682
683 HRESULT SetDisplayName(
684 [in] LPCSTR pszDisplay);
685
686 HRESULT GetDisplayName(
687 [out] LPSTR *ppszDisplay);
688
689 HRESULT GetOffsets(
690 [out] LPBODYOFFSETS pOffsets);
691
692 HRESULT GetCurrentEncoding(
693 [out] ENCODINGTYPE *pietEncoding);
694
695 HRESULT SetCurrentEncoding(
696 [in] ENCODINGTYPE ietEncoding);
697
698 HRESULT GetEstimatedSize(
699 [in] ENCODINGTYPE ietEncoding,
700 [out] ULONG *pcbSize);
701
702 HRESULT GetDataHere(
703 [in] ENCODINGTYPE ietEncoding,
704 [in] IStream *pStream);
705
706 HRESULT GetData(
707 [in] ENCODINGTYPE ietEncoding,
708 [out] IStream **ppStream);
709
710 HRESULT SetData(
711 [in] ENCODINGTYPE ietEncoding,
712 [in,unique] LPCSTR pszPriType,
713 [in,unique] LPCSTR pszSubType,
714 [in] REFIID riid,
715 [in,iid_is(riid)] LPVOID pvObject);
716
717 HRESULT EmptyData(void);
718
719 HRESULT CopyTo(
720 [in] IMimeBody *pBody);
721
722 HRESULT GetTransmitInfo(
723 [in,out] LPTRANSMITINFO pTransmitInfo);
724
725 HRESULT SaveToFile(
726 [in] ENCODINGTYPE ietEncoding,
727 [in] LPCSTR pszFilePath);
728
729 HRESULT GetHandle(
730 [out] LPHBODY phBody);
731
732 }
733
734 [
735 uuid(fd853cd4-7f86-11d0-8252-00c04fd85ab4),
736 object
737 ]
738 interface IMimeMessageTree : IPersistStreamInit
739 {
740 typedef [unique] IMimeMessageTree *LPMIMEMESSAGETREE;
741
742 const HBODY HBODY_ROOT = (HBODY)-1;
743
744 typedef enum tagBODYLOCATION
745 {
746 IBL_ROOT,
747 IBL_PARENT,
748 IBL_FIRST,
749 IBL_LAST,
750 IBL_NEXT,
751 IBL_PREVIOUS,
752 } BODYLOCATION;
753
754 typedef struct tagFINDBODY
755 {
756 LPSTR pszPriType;
757 LPSTR pszSubType;
758 DWORD dwReserved;
759 } FINDBODY, *LPFINDBODY;
760
761 HRESULT GetMessageSource(
762 [out] IStream **ppStream,
763 [in] DWORD dwFlags);
764
765 HRESULT GetMessageSize(
766 [out] ULONG *pcbSize,
767 [in] DWORD dwFlags);
768
769 HRESULT LoadOffsetTable(
770 [in] IStream *pStream);
771
772 HRESULT SaveOffsetTable(
773 [in] IStream *pStream,
774 [in] DWORD dwFlags);
775
776 HRESULT GetFlags(
777 [out] DWORD *pdwFlags);
778
779 HRESULT Commit(
780 [in] DWORD dwFlags);
781
782 HRESULT HandsOffStorage();
783
784 HRESULT BindToObject(
785 [in] const HBODY hBody,
786 [in] REFIID riid,
787 [out, iid_is(riid)] void **ppvObject);
788
789 HRESULT SaveBody(
790 [in] HBODY hBody,
791 [in] DWORD dwFlags,
792 [in] IStream *pStream);
793
794 HRESULT InsertBody(
795 [in] BODYLOCATION location,
796 [in] HBODY hPivot,
797 [out] LPHBODY phBody);
798
799 HRESULT GetBody(
800 [in] BODYLOCATION location,
801 [in] HBODY hPivot,
802 [out] LPHBODY phBody);
803
804 HRESULT DeleteBody(
805 [in] HBODY hBody,
806 [in] DWORD dwFlags);
807
808 HRESULT MoveBody(
809 [in] HBODY hBody,
810 [in] BODYLOCATION location);
811
812 HRESULT CountBodies(
813 [in] HBODY hParent,
814 [in] boolean fRecurse,
815 [out] ULONG *pcBodies);
816
817 HRESULT FindFirst(
818 [in, out] LPFINDBODY pFindBody,
819 [out] LPHBODY phBody);
820
821 HRESULT FindNext(
822 [in, out] LPFINDBODY pFindBody,
823 [out] LPHBODY phBody);
824
825 HRESULT ResolveURL(
826 [in] HBODY hRelated,
827 [in] LPCSTR pszBase,
828 [in] LPCSTR pszURL,
829 [in] DWORD dwFlags,
830 [out] LPHBODY phBody);
831
832 HRESULT ToMultipart(
833 [in] HBODY hBody,
834 [in] LPCSTR pszSubType,
835 [out] LPHBODY phMultipart);
836
837 HRESULT GetBodyOffsets(
838 [in] HBODY hBody,
839 [in, out] LPBODYOFFSETS pOffsets);
840
841 HRESULT GetCharset(
842 [out] LPHCHARSET phCharset);
843
844 HRESULT SetCharset(
845 [in] HCHARSET hCharset,
846 [in] CSETAPPLYTYPE applytype);
847
848 HRESULT IsBodyType(
849 [in] HBODY hBody,
850 [in] IMSGBODYTYPE bodytype);
851
852 HRESULT IsContentType(
853 [in] HBODY hBody,
854 [in] LPCSTR pszPriType,
855 [in] LPCSTR pszSubType);
856
857 HRESULT QueryBodyProp(
858 [in] HBODY hBody,
859 [in] LPCSTR pszName,
860 [in] LPCSTR pszCriteria,
861 [in] boolean fSubString,
862 [in] boolean fCaseSensitive);
863
864 HRESULT GetBodyProp(
865 [in] HBODY hBody,
866 [in] LPCSTR pszName,
867 [in] DWORD dwFlags,
868 [in, out] LPPROPVARIANT pValue);
869
870 HRESULT SetBodyProp(
871 [in] HBODY hBody,
872 [in] LPCSTR pszName,
873 [in] DWORD dwFlags,
874 [in] LPCPROPVARIANT pValue);
875
876 HRESULT DeleteBodyProp(
877 [in] HBODY hBody,
878 [in] LPCSTR pszName);
879
880 HRESULT SetOption(
881 [in] const TYPEDID oid,
882 [in] LPCPROPVARIANT pValue);
883
884 HRESULT GetOption(
885 [in] const TYPEDID oid,
886 [in, out] LPPROPVARIANT pValue);
887 }
888
889 [
890 uuid(fd853cd5-7f86-11d0-8252-00c04fd85ab4),
891 object
892 ]
893 interface IMimeMessage : IMimeMessageTree
894 {
895 typedef [unique] IMimeMessage *LPMIMEMESSAGE;
896
897 typedef DWORD TEXTTYPE;
898
899 typedef enum tagIMSGFLAGS
900 {
901 IMF_ATTACHMENTS = 0x00000001,
902 IMF_MULTIPART = 0x00000002,
903 IMF_SUBMULTIPART = 0x00000004,
904 IMF_MIME = 0x00000008,
905 IMF_HTML = 0x00000010,
906 IMF_PLAIN = 0x00000020,
907 IMF_PARTIAL = 0x00000040,
908 IMF_SIGNED = 0x00000080,
909 IMF_ENCRYPTED = 0x00000100,
910 IMF_TNEF = 0x00000200,
911 IMF_MHTML = 0x00000400,
912 IMF_SECURE = 0x00000800,
913 IMF_TEXT = 0x00001000,
914 IMF_CSETTAGGED = 0x00002000,
915 IMF_NEWS = 0x00004000,
916 IMF_VOICEMAIL = 0x00008000,
917 IMF_HASVCARD = 0x00010000,
918 IMF_RFC1154 = 0x00020000,
919 } IMSGFLAGS;
920
921 typedef enum tagIMSGPRIORITY
922 {
923 IMSG_PRI_LOW = 5,
924 IMSG_PRI_NORMAL = 3,
925 IMSG_PRI_HIGH = 1,
926 } IMSGPRIORITY;
927
928 cpp_quote("#define WPF_HTML 0x00000001")
929 cpp_quote("#define WPF_AUTOINLINE 0x00000002")
930 cpp_quote("#define WPF_SLIDESHOW 0x00000004")
931 cpp_quote("#define WPF_ATTACHLINKS 0x00000008")
932 cpp_quote("#define WPF_IMAGESONLY 0x00000010")
933 cpp_quote("#define WPF_NOMETACHARSET 0x00000020")
934
935 typedef struct tagWEPAGEOPTIONS
936 {
937 DWORD cbSize;
938 DWORD dwFlags;
939 DWORD dwDelay;
940 WCHAR wchQuote;
941 } WEBPAGEOPTIONS, *LPWEBPAGEOPTIONS;
942
943 cpp_quote("#define TXT_PLAIN 1")
944 cpp_quote("#define TXT_HTML 2")
945
946 HRESULT CreateWebPage(
947 [in] IStream *pRootStm,
948 [in] LPWEBPAGEOPTIONS pOptions,
949 [in] IMimeMessageCallback *pCallback,
950 [out] IMoniker **ppMoniker);
951
952 HRESULT GetProp(
953 [in] LPCSTR pszName,
954 [in] DWORD dwFlags,
955 [in,out] LPPROPVARIANT pValue);
956
957 HRESULT SetProp(
958 [in] LPCSTR pszName,
959 [in] DWORD dwFlags,
960 [in] LPCPROPVARIANT pValue);
961
962 HRESULT DeleteProp(
963 [in] LPCSTR pszName);
964
965 HRESULT QueryProp(
966 [in] LPCSTR pszName,
967 [in] LPCSTR pszCriteria,
968 [in] boolean fSubString,
969 [in] boolean fCaseSensitive);
970
971 HRESULT GetTextBody(
972 [in] DWORD dwTxtType,
973 [in] ENCODINGTYPE ietEncoding,
974 [out] IStream **pStream,
975 [out] LPHBODY phBody);
976
977 HRESULT SetTextBody(
978 [in] DWORD dwTxtType,
979 [in] ENCODINGTYPE ietEncoding,
980 [in] HBODY hAlternative,
981 [in] IStream *pStream,
982 [out] LPHBODY phBody);
983
984 HRESULT AttachObject(
985 [in] REFIID riid,
986 [in, iid_is(riid)] void *pvObject,
987 [out] LPHBODY phBody);
988
989 HRESULT AttachFile(
990 [in] LPCSTR pszFilePath,
991 [in] IStream *pstmFile,
992 [out] LPHBODY phBody);
993
994 HRESULT AttachURL(
995 [in] LPCSTR pszBase,
996 [in] LPCSTR pszURL,
997 [in] DWORD dwFlags,
998 [in] IStream *pstmURL,
999 [out] LPSTR *ppszCIDURL,
1000 [out] LPHBODY phBody);
1001
1002 HRESULT GetAttachments(
1003 [out] ULONG *pcAttach,
1004 [out] LPHBODY *pprghAttach);
1005
1006 HRESULT GetAddressTable(
1007 [out] IMimeAddressTable **ppTable);
1008
1009 HRESULT GetSender(
1010 [in, out] LPADDRESSPROPS pAddress);
1011
1012 HRESULT GetAddressTypes(
1013 [in] DWORD dwAdrTypes,
1014 [in] DWORD dwProps,
1015 [in, out] LPADDRESSLIST pList);
1016
1017 HRESULT GetAddressFormat(
1018 [in] DWORD dwAdrTypes,
1019 [in] ADDRESSFORMAT format,
1020 [out] LPSTR *ppszFormat);
1021
1022 HRESULT EnumAddressTypes(
1023 [in] DWORD dwAdrTypes,
1024 [in] DWORD dwProps,
1025 [out] IMimeEnumAddressTypes **ppEnum);
1026
1027 HRESULT SplitMessage(
1028 [in] ULONG cbMaxPart,
1029 [out] IMimeMessageParts **ppParts);
1030
1031 HRESULT GetRootMoniker(
1032 [out] IMoniker **ppMoniker);
1033 }
1034
1035 [
1036 uuid(761aa741-7bda-11d1-8aa9-00c04fb951f3),
1037 object
1038 ]
1039 interface IMimeMessageCallback : IUnknown
1040 {
1041 HRESULT OnWebPageSplitter(
1042 [in] DWORD cInlined,
1043 [in] IStream *ppStream);
1044 }
1045
1046 [
1047 uuid(de4ad8da-555f-11d1-8dd0-00c04fb951f9),
1048 object
1049 ]
1050 interface IPersistMime : IPersist
1051 {
1052 /* FIXME: fill this in */
1053 }
1054
1055 [
1056 uuid(c558834f-7f86-11d0-8252-00c04fd85ab4),
1057 object
1058 ]
1059 interface IMimeMessageParts : IUnknown
1060 {
1061 /* FIXME: fill this in */
1062 }
1063
1064 [
1065 uuid(c558834d-7f86-11d0-8252-00c04fd85ab4),
1066 object
1067 ]
1068 interface IMimeEnumHeaderRows : IUnknown
1069 {
1070 typedef struct tagENUMHEADERROW
1071 {
1072 HHEADERROW hRow;
1073 LPSTR pszHeader;
1074 LPSTR pszData;
1075 ULONG cchData;
1076 DWORD_PTR dwReserved;
1077 } ENUMHEADERROW, *LPENUMHEADERROW;
1078
1079 /* FIXME: fill this in */
1080 }
1081
1082 [
1083 uuid(fd853cee-7f86-11d0-8252-00c04fd85ab4),
1084 object
1085 ]
1086 interface IMimeEnumProperties : IUnknown
1087 {
1088 typedef [unique] IMimeEnumProperties *LPMIMEENUMPROPERTIES;
1089
1090 typedef struct tagENUMPROPERTY
1091 {
1092 LPSTR pszName;
1093 HHEADERROW hRow;
1094 DWORD dwPropId;
1095 } ENUMPROPERTY, *LPENUMPROPERTY;
1096
1097 HRESULT Next(
1098 [in] ULONG cFetch,
1099 [in, out] LPENUMPROPERTY prgProp,
1100 [out] ULONG *pcFetched);
1101
1102 HRESULT Skip(
1103 [in] ULONG cItems);
1104
1105 HRESULT Reset(void);
1106
1107 HRESULT Clone(
1108 [out] IMimeEnumProperties **ppEnum);
1109
1110 HRESULT Count(
1111 [out] ULONG *pcItems);
1112
1113 }
1114
1115 [
1116 uuid(c5588354-7f86-11d0-8252-00c04fd85ab4),
1117 object
1118 ]
1119 interface IMimeEnumAddressTypes : IUnknown
1120 {
1121 /* FIXME: fill this in */
1122 }
1123
1124 [
1125 uuid(c5588350-7f86-11d0-8252-00c04fd85ab4),
1126 object
1127 ]
1128 interface IMimeEnumMessageParts : IUnknown
1129 {
1130 /* FIXME: fill this in */
1131 }
1132
1133 [
1134 uuid(64577981-86d7-11d1-bdfc-00c04fa31009),
1135 object
1136 ]
1137 interface IHashTable : IUnknown
1138 {
1139 /* FIXME: fill this in */
1140 }
1141
1142 [
1143 uuid(c5588351-7f86-11d0-8252-00c04fd85ab4),
1144 object
1145 ]
1146 interface IMimeAllocator : IMalloc
1147 {
1148 typedef [unique] IMimeAllocator *LPMIMEALLOCATOR;
1149
1150 HRESULT FreeParamInfoArray(
1151 [in] ULONG cParams,
1152 [in] LPMIMEPARAMINFO prgParam,
1153 [in] boolean fFreeArray);
1154
1155 HRESULT FreeAddressList(
1156 [in,out] LPADDRESSLIST pList);
1157
1158 HRESULT FreeAddressProps(
1159 [in,out] LPADDRESSPROPS pAddress);
1160
1161 HRESULT ReleaseObjects(
1162 [in] ULONG cObjects,
1163 [in] IUnknown **prgpUnknown,
1164 [in] boolean fFreeArray);
1165
1166 HRESULT FreeEnumHeaderRowArray(
1167 [in] ULONG cRows,
1168 [in] LPENUMHEADERROW prgRow,
1169 [in] boolean fFreeArray);
1170
1171 HRESULT FreeEnumPropertyArray(
1172 [in] ULONG cProps,
1173 [in] LPENUMPROPERTY prgProp,
1174 [in] boolean fFreeArray);
1175
1176 HRESULT FreeThumbprint(
1177 [in] THUMBBLOB *pthumbprint);
1178
1179 HRESULT PropVariantClear(
1180 [in] LPPROPVARIANT pProp);
1181
1182 }
1183
1184 [
1185 uuid(feceaffd-c441-11d1-960e-00c04fbd7c09),
1186 object
1187 ]
1188 interface IMimeObjResolver : IUnknown
1189 {
1190 /* FIXME: fill this in */
1191 }
1192
1193 [
1194 uuid(b0d17fc2-7bc4-11d1-bdfa-00c04fa31009),
1195 object
1196 ]
1197 interface IFontCache : IUnknown
1198 {
1199 /* FIXME: fill this in */
1200 }
1201
1202 [
1203 uuid(b0d17fc5-7bc4-11d1-bdfa-00c04fa31009),
1204 object
1205 ]
1206 interface IFontCacheNotify : IUnknown
1207 {
1208 /* FIXME: fill this in */
1209 }
1210
1211 [
1212 uuid(70183210-7b36-11d2-8c12-00c04fa31009),
1213 object
1214 ]
1215 interface IMimeEditTag : IUnknown
1216 {
1217 /* FIXME: fill this in */
1218 }
1219
1220 [
1221 uuid(d09ee528-7b38-11d2-8c12-00c04fa31009),
1222 object
1223 ]
1224 interface IMimeEditTagCollection : IUnknown
1225 {
1226 /* FIXME: fill this in */
1227 }
1228
1229 [
1230 uuid(ba715ae0-a740-11d2-8b22-0080c76b34c6),
1231 local
1232 ]
1233 interface IMimeSecurityCallback : IUnknown
1234 {
1235 /* FIXME: fill this in */
1236
1237 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_UNKNOWN 0")
1238 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_KEYTRANS 1")
1239 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_KEYAGREE 2")
1240 cpp_quote("#define CMS_RECIPIENT_INFO_TYPE_MAIL_LIST 3")
1241
1242 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_CERTIFICATE 0")
1243 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_KEYTRANS 1")
1244 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_PROVIDER 2")
1245 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_EPHEMERAL_KEYAGREE 3")
1246 cpp_quote("#define CMS_RECIPIENT_INFO_PUBKEY_STATIC_KEYAGREE 4")
1247
1248 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_CERTIFICATE 0")
1249 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_ISSUERSERIAL 1")
1250 cpp_quote("#define CMS_RECIPIENT_INFO_KEYID_KEY_ID 2")
1251
1252 }
1253}
1254
1255cpp_quote("#ifdef __cplusplus")
1256cpp_quote(" extern \"C\" {")
1257cpp_quote("#endif")
1258
1259cpp_quote("")
1260cpp_quote("HRESULT WINAPI MimeOleSetCompatMode(DWORD);")
1261cpp_quote("HRESULT WINAPI MimeOleContentTypeFromUrl(LPCSTR,LPCSTR,LPSTR*);")
1262cpp_quote("HRESULT WINAPI MimeOleParseMhtmlUrl(LPSTR,LPSTR*,LPSTR*);")
1263cpp_quote("HRESULT WINAPI MimeOleObjectFromUrl(LPCSTR,BOOL,REFIID,LPVOID*,IUnknown**);")
1264cpp_quote("HRESULT WINAPI MimeOleObjectFromMoniker(BINDF,IMoniker*,IBindCtx*,REFIID,LPVOID*,IMoniker**);")
1265cpp_quote("HRESULT WINAPI MimeOleCombineURL(LPCSTR,ULONG,LPCSTR,ULONG,BOOL,LPSTR*);")
1266cpp_quote("HRESULT WINAPI MimeOleGetSubjectFileName(IMimePropertySet*,ULONG*,ULONG*,LPSTR,ULONG);")
1267cpp_quote("HRESULT WINAPI MimeOleCreateWebDocument(LPCSTR,LPCSTR,IMimeWebDocument**);")
1268cpp_quote("HRESULT WINAPI MimeOleGetRelatedSection(IMimeMessageTree*,boolean,LPHBODY,boolean*);")
1269cpp_quote("HRESULT WINAPI MimeOleGetMixedSection(IMimeMessageTree*,boolean,LPHBODY,boolean*);")
1270cpp_quote("HRESULT WINAPI MimeOleGetAlternativeSection(IMimeMessageTree*,LPHBODY,boolean*);")
1271cpp_quote("HRESULT WINAPI MimeOleGenerateCID(LPSTR,ULONG,boolean);")
1272cpp_quote("HRESULT WINAPI MimeOleGenerateMID(LPSTR,ULONG,boolean);")
1273cpp_quote("HRESULT WINAPI MimeOleCreateByteStream(IStream**);")
1274cpp_quote("HRESULT WINAPI MimeOlGetPropertySchema(IMimePropertySchema**);")
1275cpp_quote("HRESULT WINAPI MimeOleQueryString(LPCSTR,LPCSTR,boolean,boolean);")
1276cpp_quote("HRESULT WINAPI MimeOleGetPropA(IMimePropertySet*,LPCSTR,DWORD,LPSTR*);")
1277cpp_quote("HRESULT WINAPI MimeOleSetPropA(IMimePropertySet*,LPCSTR,DWORD,LPCSTR);")
1278cpp_quote("HRESULT WINAPI MimeOleGetPropW(IMimePropertySet*,LPCSTR,DWORD,LPWSTR*);")
1279cpp_quote("HRESULT WINAPI MimeOleSetPropW(IMimePropertySet*,LPCSTR,DWORD,LPCWSTR);")
1280cpp_quote("HRESULT WINAPI MimeOleGetBodyPropA(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPSTR*);")
1281cpp_quote("HRESULT WINAPI MimeOleSetBodyPropA(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPCSTR);")
1282cpp_quote("HRESULT WINAPI MimeOleGetBodyPropW(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPWSTR*);")
1283cpp_quote("HRESULT WINAPI MimeOleSetBodyPropW(IMimeMessageTree*,HBODY,LPCSTR,DWORD,LPCWSTR);")
1284cpp_quote("HRESULT WINAPI MimeOleCreateHeaderTable(IMimeHeaderTable**);")
1285cpp_quote("HRESULT WINAPI MimeOleVariantFree(LPPROPVARIANT);")
1286cpp_quote("HRESULT WINAPI MimeOleVariantCopy(LPPROPVARIANT,LPPROPVARIANT);")
1287cpp_quote("HRESULT WINAPI MimeOleGetExtClassId(LPCSTR,LPCLSID);")
1288cpp_quote("HRESULT WINAPI MimeOleEncodeHeader(HCHARSET,LPPROPVARIANT,LPSTR*,LPRFC1522INFO);")
1289cpp_quote("HRESULT WINAPI MimeOleDecodeHeader(HCHARSET,LPCSTR,LPPROPVARIANT,LPRFC1522INFO);")
1290cpp_quote("HRESULT WINAPI MimeOleRfc1522Decode(LPCSTR,LPSTR,ULONG,LPSTR*);")
1291cpp_quote("HRESULT WINAPI MimeOleRfc1522Encode(LPCSTR,HCHARSET,LPSTR*);")
1292cpp_quote("HRESULT WINAPI MimeOleGetInternat(IMimeInternational**);")
1293cpp_quote("HRESULT WINAPI MimeOleFindCharset(LPCSTR,LPHCHARSET);")
1294cpp_quote("HRESULT WINAPI MimeOleGetCharsetInfo(HCHARSET,LPINETCSETINFO);")
1295cpp_quote("HRESULT WINAPI MimeOleGetCodePageInfo(HCHARSET,LPCODEPAGEINFO);")
1296cpp_quote("HRESULT WINAPI MimeOleGetDefaultCharset(LPHCHARSET);")
1297cpp_quote("HRESULT WINAPI MimeOleSetDefaultCharset(HCHARSET);")
1298cpp_quote("HRESULT WINAPI MimeOleGetCodePageCharset(CODEPAGEID,CHARSETTYPE,LPHCHARSET);")
1299cpp_quote("HRESULT WINAPI MimeOleCreateVirtualStream(IStream**);")
1300cpp_quote("HRESULT WINAPI MimeOleOpenFileStream(LPCSTR,DWORD,DWORD,IStream**);")
1301cpp_quote("HRESULT WINAPI MimeOleIsTnefStream(IStream*);")
1302cpp_quote("HRESULT WINAPI MimeOleGenerateFileName(LPCSTR,LPCSTR,LPCSTR,LPSTR*);")
1303cpp_quote("HRESULT WINAPI MimeOleGetFileExtension(LPCSTR,LPSTR,ULONG);")
1304cpp_quote("HRESULT WINAPI MimeOleCreateSecurity(IMimeSecurity**);")
1305cpp_quote("HRESULT WINAPI MimeOleInetDateToFileTime(LPCSTR,LPFILETIME);")
1306cpp_quote("HRESULT WINAPI MimeOleFileTimeToInetDate(LPFILETIME,LPSTR,ULONG);")
1307cpp_quote("HRESULT WINAPI MimeOleCreateMessageParts(IMimeMessageParts**);")
1308cpp_quote("HRESULT WINAPI MimeOleGetAllocator(IMimeAllocator**);")
1309cpp_quote("HRESULT WINAPI MimeOleParseRfc822Address(DWORD,ENCODINGTYPE,LPCSTR,LPADDRESSLIST);")
1310cpp_quote("HRESULT WINAPI MimeOleCreateMessage(IUnknown*,IMimeMessage**);")
1311cpp_quote("HRESULT WINAPI MimeOleMergePartialHeaders(IStream*,IStream*);")
1312cpp_quote("HRESULT WINAPI MimeOleEscapeString(CODEPAGEID,LPCSTR,LPSTR*);")
1313cpp_quote("HRESULT WINAPI MimeOleGetExtContentType(LPCSTR,LPSTR*);")
1314cpp_quote("HRESULT WINAPI MimeOleGetContentTypeExt(LPCSTR,LPSTR*);")
1315cpp_quote("HRESULT WINAPI MimeOleGetFileInfo(LPSTR,LPSTR*,LPSTR*,LPSTR*,LPSTR*,LPSTR*);")
1316cpp_quote("HRESULT WINAPI MimeOleCreateBody(IMimeBody**);")
1317cpp_quote("HRESULT WINAPI MimeOleCreatePropertySet(IUnknown*,IMimePropertySet**);")
1318cpp_quote("HRESULT WINAPI MimeOleCreateMessageTree(IUnknown*,IMimeMessageTree**);")
1319cpp_quote("HRESULT WINAPI MimeOleGetCertsFromThumbprints(THUMBBLOB*,X509CERTRESULT*,const HCERTSTORE*,DWORD);")
1320cpp_quote("HRESULT WINAPI MimeOleSplitMessage(IMimeMessage*,ULONG,IMimeMessageParts**);")
1321cpp_quote("HRESULT WINAPI MimeOleClearDirtyTree(IMimeMessageTree*);")
1322cpp_quote("HRESULT WINAPI MimeOleConvertEnrichedToHTML(CODEPAGEID,IStream*,IStream*);")
1323cpp_quote("HRESULT WINAPI MimeOleSMimeCapsToDlg(LPBYTE,DWORD,DWORD,PCX509CERT*,HWND,DWORD,DWORD,DWORD);")
1324cpp_quote("HRESULT WINAPI MimeOleSMimeCapsFromDlg(HWND,DWORD,DWORD,DWORD,LPBYTE,DWORD*);")
1325cpp_quote("HRESULT WINAPI MimeOleSMimeCapInit(LPBYTE,DWORD,LPVOID*);")
1326cpp_quote("HRESULT WINAPI MimeOleSMimeCapAddSMimeCap(LPBYTE,DWORD,LPVOID);")
1327cpp_quote("HRESULT WINAPI MimeOleSMimeCapAddCert(LPBYTE,DWORD,BOOL,LPVOID);")
1328cpp_quote("HRESULT WINAPI MimeOleSMimeCapGetEncAlg(LPVOID,LPBYTE,DWORD*,DWORD*);")
1329cpp_quote("HRESULT WINAPI MimeOleSMimeCapGetHashAlg(LPVOID,LPBYTE,DWORD*,DWORD*);")
1330cpp_quote("HRESULT WINAPI MimeOleSMimeCapRelease(LPVOID);")
1331cpp_quote("HRESULT WINAPI MimeOleAlgNameFromSMimeap(LPBYTE,DWORD,LPCSTR*);")
1332cpp_quote("HRESULT WINAPI MimeOleAlgStrengthFromSMimeCap(LPBYTE,DWORD,BOOL,DWORD*);")
1333cpp_quote("HRESULT WINAPI MimeOleSMimeCapsFull(LPVOID,BOOL,BOOL,LPBYTE,DWORD*);")
1334cpp_quote("HRESULT WINAPI MimeOleCreateHashTable(DWORD,BOOL,IHashTable**);")
1335cpp_quote("HRESULT WINAPI MimeOleStripHeaders(IMimeMessage*,HBODY,LPCSTR,LPCSTR,IStream**);")
1336
1337cpp_quote("HRESULT WINAPI MimeEditViewSource(HWND,IMimeMessage*);")
1338cpp_quote("HRESULT WINAPI MimeEditIsSafeToRun(HWND,LPCSTR);")
1339cpp_quote("HRESULT WINAPI MimeEditVerifyTrust(HWND,LPCSTR,LPCSTR);")
1340cpp_quote("HRESULT WINAPI MimeEditCreateMimeDocument(IUnknown*,IMimeMessage*,DWORD,IMimeMessage**);")
1341cpp_quote("HRESULT WINAPI MimeEditGetBackgroundImageUrl(IUnknown*,BSTR*);")
1342cpp_quote("HRESULT WINAPI MimeEditDocumentFromStream(IStream*,REFIID,void**);")
1343
1344cpp_quote("#ifdef __cplusplus")
1345cpp_quote("}")
1346cpp_quote("#endif")
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette