ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/mqmail.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 3322 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6 #ifndef _MQMAIL_H
7 #define _MQMAIL_H
8
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12
13 #include <windows.h>
14 #include <windowsx.h>
15 #include <ole2.h>
16
17 DEFINE_GUID(CLSID_MQMailQueueType,0x5eadc0d0,0x7182,0x11cf,0xa8,0xff,0x00,0x20,0xaf,0xb8,0xfb,0x50);
18
19 typedef enum MQMailRecipType_enum {
20 MQMailRecip_TO,MQMailRecip_CC,MQMailRecip_BCC
21 } MQMailRecipType;
22
23 typedef struct MQMailRecip_tag {
24 LPSTR szName;
25 LPSTR szQueueLabel;
26 LPSTR szAddress;
27 MQMailRecipType iType;
28 LPFILETIME pftDeliveryTime;
29 LPSTR szNonDeliveryReason;
30 } MQMailRecip,*LPMQMailRecip;
31
32 typedef struct MQMailRecipList_tag {
33 ULONG cRecips;
34 LPMQMailRecip *apRecip;
35 } MQMailRecipList,*LPMQMailRecipList;
36
37 typedef enum MQMailFormFieldType_enum {
38 MQMailFormField_BOOL,MQMailFormField_STRING,MQMailFormField_LONG,MQMailFormField_CURRENCY,MQMailFormField_DOUBLE
39 } MQMailFormFieldType;
40
41 typedef union MQMailFormFieldData_tag {
42 WINBOOL b;
43 LPSTR lpsz;
44 LONG l;
45 CY cy;
46 double dbl;
47 } MQMailFormFieldData,*LPMQMailFormFieldData;
48
49 typedef struct MQMailFormField_tag {
50 LPSTR szName;
51 MQMailFormFieldType iType;
52 MQMailFormFieldData Value;
53 } MQMailFormField,*LPMQMailFormField;
54
55 typedef struct MQMailFormFieldList_tag {
56 ULONG cFields;
57 LPMQMailFormField *apField;
58 } MQMailFormFieldList,*LPMQMailFormFieldList;
59
60 typedef enum MQMailEMailType_enum {
61 MQMailEMail_MESSAGE,MQMailEMail_FORM,MQMailEMail_TNEF,MQMailEMail_DELIVERY_REPORT,MQMailEMail_NON_DELIVERY_REPORT
62 } MQMailEMailType;
63
64 typedef struct MQMailMessageData_tag {
65 LPSTR szText;
66 } MQMailMessageData,*LPMQMailMessageData;
67
68 typedef struct MQMailFormData_tag {
69 LPSTR szName;
70 LPMQMailFormFieldList pFields;
71 } MQMailFormData,*LPMQMailFormData;
72
73 typedef struct MQMailTnefData_tag {
74 ULONG cbData;
75 LPBYTE lpbData;
76 } MQMailTnefData,*LPMQMailTnefData;
77
78 typedef struct MQMailDeliveryReportData_tag {
79 LPMQMailRecipList pDeliveredRecips;
80 LPSTR szOriginalSubject;
81 LPFILETIME pftOriginalDate;
82 } MQMailDeliveryReportData,*LPMQMailDeliveryReportData;
83
84 typedef struct MQMailEMail_tag MQMailEMail,*LPMQMailEMail;
85 typedef struct MQMailNonDeliveryReportData_tag {
86 LPMQMailRecipList pNonDeliveredRecips;
87 LPMQMailEMail pOriginalEMail;
88 } MQMailNonDeliveryReportData,*LPMQMailNonDeliveryReportData;
89
90 typedef struct MQMailEMail_tag {
91 LPMQMailRecip pFrom;
92 LPSTR szSubject;
93 WINBOOL fRequestDeliveryReport;
94 WINBOOL fRequestNonDeliveryReport;
95 LPFILETIME pftDate;
96 LPMQMailRecipList pRecips;
97 MQMailEMailType iType;
98 __C89_NAMELESS union {
99 MQMailFormData form;
100 MQMailMessageData message;
101 MQMailTnefData tnef;
102 MQMailDeliveryReportData DeliveryReport;
103 MQMailNonDeliveryReportData NonDeliveryReport;
104 };
105 LPVOID pReserved;
106 } MQMailEMail,*LPMQMailEMail;
107
108 STDAPI MQMailComposeBody(LPMQMailEMail pEMail,ULONG *pcbBuffer,LPBYTE *ppbBuffer);
109 STDAPI MQMailParseBody(ULONG cbBuffer,LPBYTE pbBuffer,LPMQMailEMail *ppEMail);
110 STDAPI_(void) MQMailFreeMemory(LPVOID lpBuffer);
111
112 #ifdef __cplusplus
113 }
114 #endif
115 #endif