CDOSys.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:167k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* at Wed Jul 11 23:53:33 2001
  5.  */
  6. /* Compiler settings for X:cdoptsrccdocdo.idl:
  7.     Oicf, W1, Zp8, env=Win32 (32b run)
  8.     protocol : dce , ms_ext, app_config, c_ext, robust
  9.     error checks: allocation ref bounds_check enum stub_data 
  10.     VC __declspec() decoration level: 
  11.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  12.          DECLSPEC_UUID(), MIDL_INTERFACE()
  13. */
  14. //@@MIDL_FILE_HEADING(  )
  15. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  16. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  17. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  18. #endif
  19. #include "rpc.h"
  20. #include "rpcndr.h"
  21. #ifndef __RPCNDR_H_VERSION__
  22. #error this stub requires an updated version of <rpcndr.h>
  23. #endif // __RPCNDR_H_VERSION__
  24. #ifndef COM_NO_WINDOWS_H
  25. #include "windows.h"
  26. #include "ole2.h"
  27. #endif /*COM_NO_WINDOWS_H*/
  28. #ifndef __cdo_h__
  29. #define __cdo_h__
  30. #include "cdosysstr.h"
  31. #if defined __cplusplus && !defined CDO_NO_NAMESPACE
  32. namespace CDO {
  33. #else
  34. #undef IDataSource
  35. #endif
  36. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  37. #pragma once
  38. #endif
  39. /* Forward Declarations */ 
  40. #ifndef __IDataSource_FWD_DEFINED__
  41. #define __IDataSource_FWD_DEFINED__
  42. typedef interface IDataSource IDataSource;
  43. #endif  /* __IDataSource_FWD_DEFINED__ */
  44. #ifndef __IMessage_FWD_DEFINED__
  45. #define __IMessage_FWD_DEFINED__
  46. typedef interface IMessage IMessage;
  47. #endif  /* __IMessage_FWD_DEFINED__ */
  48. #ifndef __IBodyPart_FWD_DEFINED__
  49. #define __IBodyPart_FWD_DEFINED__
  50. typedef interface IBodyPart IBodyPart;
  51. #endif  /* __IBodyPart_FWD_DEFINED__ */
  52. #ifndef __IConfiguration_FWD_DEFINED__
  53. #define __IConfiguration_FWD_DEFINED__
  54. typedef interface IConfiguration IConfiguration;
  55. #endif  /* __IConfiguration_FWD_DEFINED__ */
  56. #ifndef __IMessages_FWD_DEFINED__
  57. #define __IMessages_FWD_DEFINED__
  58. typedef interface IMessages IMessages;
  59. #endif  /* __IMessages_FWD_DEFINED__ */
  60. #ifndef __IDropDirectory_FWD_DEFINED__
  61. #define __IDropDirectory_FWD_DEFINED__
  62. typedef interface IDropDirectory IDropDirectory;
  63. #endif  /* __IDropDirectory_FWD_DEFINED__ */
  64. #ifndef __IBodyParts_FWD_DEFINED__
  65. #define __IBodyParts_FWD_DEFINED__
  66. typedef interface IBodyParts IBodyParts;
  67. #endif  /* __IBodyParts_FWD_DEFINED__ */
  68. #ifndef __ISMTPScriptConnector_FWD_DEFINED__
  69. #define __ISMTPScriptConnector_FWD_DEFINED__
  70. typedef interface ISMTPScriptConnector ISMTPScriptConnector;
  71. #endif  /* __ISMTPScriptConnector_FWD_DEFINED__ */
  72. #ifndef __INNTPEarlyScriptConnector_FWD_DEFINED__
  73. #define __INNTPEarlyScriptConnector_FWD_DEFINED__
  74. typedef interface INNTPEarlyScriptConnector INNTPEarlyScriptConnector;
  75. #endif  /* __INNTPEarlyScriptConnector_FWD_DEFINED__ */
  76. #ifndef __INNTPPostScriptConnector_FWD_DEFINED__
  77. #define __INNTPPostScriptConnector_FWD_DEFINED__
  78. typedef interface INNTPPostScriptConnector INNTPPostScriptConnector;
  79. #endif  /* __INNTPPostScriptConnector_FWD_DEFINED__ */
  80. #ifndef __INNTPFinalScriptConnector_FWD_DEFINED__
  81. #define __INNTPFinalScriptConnector_FWD_DEFINED__
  82. typedef interface INNTPFinalScriptConnector INNTPFinalScriptConnector;
  83. #endif  /* __INNTPFinalScriptConnector_FWD_DEFINED__ */
  84. #ifndef __ISMTPOnArrival_FWD_DEFINED__
  85. #define __ISMTPOnArrival_FWD_DEFINED__
  86. typedef interface ISMTPOnArrival ISMTPOnArrival;
  87. #endif  /* __ISMTPOnArrival_FWD_DEFINED__ */
  88. #ifndef __INNTPOnPostEarly_FWD_DEFINED__
  89. #define __INNTPOnPostEarly_FWD_DEFINED__
  90. typedef interface INNTPOnPostEarly INNTPOnPostEarly;
  91. #endif  /* __INNTPOnPostEarly_FWD_DEFINED__ */
  92. #ifndef __INNTPOnPost_FWD_DEFINED__
  93. #define __INNTPOnPost_FWD_DEFINED__
  94. typedef interface INNTPOnPost INNTPOnPost;
  95. #endif  /* __INNTPOnPost_FWD_DEFINED__ */
  96. #ifndef __INNTPOnPostFinal_FWD_DEFINED__
  97. #define __INNTPOnPostFinal_FWD_DEFINED__
  98. typedef interface INNTPOnPostFinal INNTPOnPostFinal;
  99. #endif  /* __INNTPOnPostFinal_FWD_DEFINED__ */
  100. #ifndef __IProxyObject_FWD_DEFINED__
  101. #define __IProxyObject_FWD_DEFINED__
  102. typedef interface IProxyObject IProxyObject;
  103. #endif  /* __IProxyObject_FWD_DEFINED__ */
  104. #ifndef __IGetInterface_FWD_DEFINED__
  105. #define __IGetInterface_FWD_DEFINED__
  106. typedef interface IGetInterface IGetInterface;
  107. #endif  /* __IGetInterface_FWD_DEFINED__ */
  108. #ifndef __IBodyParts_FWD_DEFINED__
  109. #define __IBodyParts_FWD_DEFINED__
  110. typedef interface IBodyParts IBodyParts;
  111. #endif  /* __IBodyParts_FWD_DEFINED__ */
  112. #ifndef __IMessages_FWD_DEFINED__
  113. #define __IMessages_FWD_DEFINED__
  114. typedef interface IMessages IMessages;
  115. #endif  /* __IMessages_FWD_DEFINED__ */
  116. #ifndef __Message_FWD_DEFINED__
  117. #define __Message_FWD_DEFINED__
  118. #ifdef __cplusplus
  119. typedef class Message Message;
  120. #else
  121. typedef struct Message Message;
  122. #endif /* __cplusplus */
  123. #endif  /* __Message_FWD_DEFINED__ */
  124. #ifndef __Configuration_FWD_DEFINED__
  125. #define __Configuration_FWD_DEFINED__
  126. #ifdef __cplusplus
  127. typedef class Configuration Configuration;
  128. #else
  129. typedef struct Configuration Configuration;
  130. #endif /* __cplusplus */
  131. #endif  /* __Configuration_FWD_DEFINED__ */
  132. #ifndef __DropDirectory_FWD_DEFINED__
  133. #define __DropDirectory_FWD_DEFINED__
  134. #ifdef __cplusplus
  135. typedef class DropDirectory DropDirectory;
  136. #else
  137. typedef struct DropDirectory DropDirectory;
  138. #endif /* __cplusplus */
  139. #endif  /* __DropDirectory_FWD_DEFINED__ */
  140. #ifndef __SMTPConnector_FWD_DEFINED__
  141. #define __SMTPConnector_FWD_DEFINED__
  142. #ifdef __cplusplus
  143. typedef class SMTPConnector SMTPConnector;
  144. #else
  145. typedef struct SMTPConnector SMTPConnector;
  146. #endif /* __cplusplus */
  147. #endif  /* __SMTPConnector_FWD_DEFINED__ */
  148. #ifndef __NNTPEarlyConnector_FWD_DEFINED__
  149. #define __NNTPEarlyConnector_FWD_DEFINED__
  150. #ifdef __cplusplus
  151. typedef class NNTPEarlyConnector NNTPEarlyConnector;
  152. #else
  153. typedef struct NNTPEarlyConnector NNTPEarlyConnector;
  154. #endif /* __cplusplus */
  155. #endif  /* __NNTPEarlyConnector_FWD_DEFINED__ */
  156. #ifndef __NNTPPostConnector_FWD_DEFINED__
  157. #define __NNTPPostConnector_FWD_DEFINED__
  158. #ifdef __cplusplus
  159. typedef class NNTPPostConnector NNTPPostConnector;
  160. #else
  161. typedef struct NNTPPostConnector NNTPPostConnector;
  162. #endif /* __cplusplus */
  163. #endif  /* __NNTPPostConnector_FWD_DEFINED__ */
  164. #ifndef __NNTPFinalConnector_FWD_DEFINED__
  165. #define __NNTPFinalConnector_FWD_DEFINED__
  166. #ifdef __cplusplus
  167. typedef class NNTPFinalConnector NNTPFinalConnector;
  168. #else
  169. typedef struct NNTPFinalConnector NNTPFinalConnector;
  170. #endif /* __cplusplus */
  171. #endif  /* __NNTPFinalConnector_FWD_DEFINED__ */
  172. /* header files for imported files */
  173. #include "oaidl.h"
  174. #include "ocidl.h"
  175. #ifndef __cplusplus // X5-101346
  176. typedef interface ADOError ADOError;
  177. typedef interface ADOErrors ADOErrors;
  178. typedef interface _ADOCommand _ADOCommand;
  179. typedef interface _ADOConnection _ADOConnection;
  180. typedef interface _ADORecord _ADORecord;
  181. typedef interface IRecADOFields IRecADOFields;
  182. typedef interface _ADOStream _ADOStream;
  183. typedef interface _ADORecordset _ADORecordset;
  184. typedef interface ADOField ADOField;
  185. typedef interface _ADOField _ADOField;
  186. typedef interface ADOFields ADOFields;
  187. typedef interface _ADOParameter _ADOParameter;
  188. typedef interface ADOParameters ADOParameters;
  189. typedef interface ADOProperty ADOProperty;
  190. typedef interface ADOProperties ADOProperties;
  191. #endif // __cplusplus
  192. #include "adoint.h"
  193. #ifdef __cplusplus
  194. extern "C"{
  195. #endif 
  196. void * __RPC_USER MIDL_user_allocate(size_t);
  197. void __RPC_USER MIDL_user_free( void * ); 
  198. /* interface __MIDL_itf_cdo_0000 */
  199. /* [local] */ 
  200. typedef /* [helpstring] */ 
  201. enum CdoConfigSource
  202.     { cdoDefaults = -1,
  203. cdoIIS = 1,
  204. cdoOutlookExpress = 2
  205.     }  CdoConfigSource;
  206. typedef /* [helpstring] */ 
  207. enum CdoDSNOptions
  208.     { cdoDSNDefault = 0,
  209. cdoDSNNever = 1,
  210. cdoDSNFailure = 2,
  211. cdoDSNSuccess = 4,
  212. cdoDSNDelay = 8,
  213. cdoDSNSuccessFailOrDelay = 14
  214.     }  CdoDSNOptions;
  215. typedef /* [helpstring] */ 
  216. enum CdoEventStatus
  217.     { cdoRunNextSink = 0,
  218. cdoSkipRemainingSinks = 1
  219.     }  CdoEventStatus;
  220. typedef /* [helpstring] */ 
  221. enum CdoEventType
  222.     { cdoSMTPOnArrival = 1,
  223. cdoNNTPOnPostEarly = 2,
  224. cdoNNTPOnPost = 3,
  225. cdoNNTPOnPostFinal = 4
  226.     }  CdoEventType;
  227. typedef /* [helpstring] */ 
  228. enum cdoImportanceValues
  229.     { cdoLow = 0,
  230. cdoNormal = 1,
  231. cdoHigh = 2
  232.     }  cdoImportanceValues;
  233. typedef /* [helpstring] */ 
  234. enum CdoMessageStat
  235.     { cdoStatSuccess = 0,
  236. cdoStatAbortDelivery = 2,
  237. cdoStatBadMail = 3
  238.     }  CdoMessageStat;
  239. typedef /* [helpstring] */ 
  240. enum CdoMHTMLFlags
  241.     { cdoSuppressNone = 0,
  242. cdoSuppressImages = 1,
  243. cdoSuppressBGSounds = 2,
  244. cdoSuppressFrames = 4,
  245. cdoSuppressObjects = 8,
  246. cdoSuppressStyleSheets = 16,
  247. cdoSuppressAll = 31
  248.     }  CdoMHTMLFlags;
  249. typedef /* [helpstring] */ 
  250. enum CdoNNTPProcessingField
  251.     { cdoPostMessage = 1,
  252. cdoProcessControl = 2,
  253. cdoProcessModerator = 4
  254.     }  CdoNNTPProcessingField;
  255. typedef /* [helpstring] */ 
  256. enum CdoPostUsing
  257.     { cdoPostUsingPickup = 1,
  258. cdoPostUsingPort = 2
  259.     }  CdoPostUsing;
  260. typedef 
  261. enum cdoPriorityValues
  262.     { cdoPriorityNonUrgent = -1,
  263. cdoPriorityNormal = 0,
  264. cdoPriorityUrgent = 1
  265.     }  cdoPriorityValues;
  266. typedef /* [helpstring] */ 
  267. enum CdoProtocolsAuthentication
  268.     { cdoAnonymous = 0,
  269. cdoBasic = 1,
  270. cdoNTLM = 2
  271.     }  CdoProtocolsAuthentication;
  272. typedef /* [helpstring] */ 
  273. enum CdoReferenceType
  274.     { cdoRefTypeId = 0,
  275. cdoRefTypeLocation = 1
  276.     }  CdoReferenceType;
  277. typedef /* [helpstring] */ 
  278. enum CdoSendUsing
  279.     { cdoSendUsingPickup = 1,
  280. cdoSendUsingPort = 2
  281.     }  CdoSendUsing;
  282. typedef /* [helpstring] */ 
  283. enum cdoSensitivityValues
  284.     { cdoSensitivityNone = 0,
  285. cdoPersonal = 1,
  286. cdoPrivate = 2,
  287. cdoCompanyConfidential = 3
  288.     }  cdoSensitivityValues;
  289. typedef /* [helpstring] */ 
  290. enum CdoTimeZoneId
  291.     { cdoUTC = 0,
  292. cdoGMT = 1,
  293. cdoSarajevo = 2,
  294. cdoParis = 3,
  295. cdoBerlin = 4,
  296. cdoEasternEurope = 5,
  297. cdoPrague = 6,
  298. cdoAthens = 7,
  299. cdoBrasilia = 8,
  300. cdoAtlanticCanada = 9,
  301. cdoEastern = 10,
  302. cdoCentral = 11,
  303. cdoMountain = 12,
  304. cdoPacific = 13,
  305. cdoAlaska = 14,
  306. cdoHawaii = 15,
  307. cdoMidwayIsland = 16,
  308. cdoWellington = 17,
  309. cdoBrisbane = 18,
  310. cdoAdelaide = 19,
  311. cdoTokyo = 20,
  312. cdoSingapore = 21,
  313. cdoBangkok = 22,
  314. cdoBombay = 23,
  315. cdoAbuDhabi = 24,
  316. cdoTehran = 25,
  317. cdoBaghdad = 26,
  318. cdoIsrael = 27,
  319. cdoNewfoundland = 28,
  320. cdoAzores = 29,
  321. cdoMidAtlantic = 30,
  322. cdoMonrovia = 31,
  323. cdoBuenosAires = 32,
  324. cdoCaracas = 33,
  325. cdoIndiana = 34,
  326. cdoBogota = 35,
  327. cdoSaskatchewan = 36,
  328. cdoMexicoCity = 37,
  329. cdoArizona = 38,
  330. cdoEniwetok = 39,
  331. cdoFiji = 40,
  332. cdoMagadan = 41,
  333. cdoHobart = 42,
  334. cdoGuam = 43,
  335. cdoDarwin = 44,
  336. cdoBeijing = 45,
  337. cdoAlmaty = 46,
  338. cdoIslamabad = 47,
  339. cdoKabul = 48,
  340. cdoCairo = 49,
  341. cdoHarare = 50,
  342. cdoMoscow = 51,
  343. cdoFloating = 52,
  344. cdoCapeVerde = 53,
  345. cdoCaucasus = 54,
  346. cdoCentralAmerica = 55,
  347. cdoEastAfrica = 56,
  348. cdoMelbourne = 57,
  349. cdoEkaterinburg = 58,
  350. cdoHelsinki = 59,
  351. cdoGreenland = 60,
  352. cdoRangoon = 61,
  353. cdoNepal = 62,
  354. cdoIrkutsk = 63,
  355. cdoKrasnoyarsk = 64,
  356. cdoSantiago = 65,
  357. cdoSriLanka = 66,
  358. cdoTonga = 67,
  359. cdoVladivostok = 68,
  360. cdoWestCentralAfrica = 69,
  361. cdoYakutsk = 70,
  362. cdoDhaka = 71,
  363. cdoSeoul = 72,
  364. cdoPerth = 73,
  365. cdoArab = 74,
  366. cdoTaipei = 75,
  367. cdoSydney2000 = 76,
  368. cdoInvalidTimeZone = 77
  369.     }  CdoTimeZoneId;
  370. extern RPC_IF_HANDLE __MIDL_itf_cdo_0000_v0_0_c_ifspec;
  371. extern RPC_IF_HANDLE __MIDL_itf_cdo_0000_v0_0_s_ifspec;
  372. #ifndef __IDataSource_INTERFACE_DEFINED__
  373. #define __IDataSource_INTERFACE_DEFINED__
  374. /* interface IDataSource */
  375. /* [unique][helpcontext][helpstring][nonextensible][dual][uuid][object] */ 
  376. EXTERN_C const IID IID_IDataSource;
  377. #if defined(__cplusplus) && !defined(CINTERFACE)
  378.     
  379.     MIDL_INTERFACE("CD000029-8B95-11D1-82DB-00C04FB1625D")
  380.     IDataSource : public IDispatch
  381.     {
  382.     public:
  383.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_SourceClass( 
  384.             /* [retval][out] */ BSTR *varSourceClass) = 0;
  385.         
  386.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Source( 
  387.             /* [retval][out] */ IUnknown **varSource) = 0;
  388.         
  389.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_IsDirty( 
  390.             /* [retval][out] */ VARIANT_BOOL *pIsDirty) = 0;
  391.         
  392.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_IsDirty( 
  393.             /* [in] */ VARIANT_BOOL varIsDirty) = 0;
  394.         
  395.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_SourceURL( 
  396.             /* [retval][out] */ BSTR *varSourceURL) = 0;
  397.         
  398.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_ActiveConnection( 
  399.             /* [retval][out] */ _Connection **varActiveConnection) = 0;
  400.         
  401.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveToObject( 
  402.             /* [in] */ IUnknown *Source,
  403.             /* [in] */ BSTR InterfaceName) = 0;
  404.         
  405.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE OpenObject( 
  406.             /* [in] */ IUnknown *Source,
  407.             /* [in] */ BSTR InterfaceName) = 0;
  408.         
  409.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveTo( 
  410.             /* [in] */ BSTR SourceURL,
  411.             /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  412.             /* [optional][in] */ ConnectModeEnum Mode,
  413.             /* [optional][in] */ RecordCreateOptionsEnum CreateOptions,
  414.             /* [optional][in] */ RecordOpenOptionsEnum Options,
  415.             /* [optional][in] */ BSTR UserName,
  416.             /* [optional][in] */ BSTR Password) = 0;
  417.         
  418.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Open( 
  419.             /* [in] */ BSTR SourceURL,
  420.             /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  421.             /* [optional][in] */ ConnectModeEnum Mode,
  422.             /* [defaultvalue][in] */ RecordCreateOptionsEnum CreateOptions,
  423.             /* [optional][in] */ RecordOpenOptionsEnum Options,
  424.             /* [optional][in] */ BSTR UserName,
  425.             /* [optional][in] */ BSTR Password) = 0;
  426.         
  427.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Save( void) = 0;
  428.         
  429.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveToContainer( 
  430.             /* [in] */ BSTR ContainerURL,
  431.             /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  432.             /* [optional][in] */ ConnectModeEnum Mode,
  433.             /* [optional][in] */ RecordCreateOptionsEnum CreateOptions,
  434.             /* [optional][in] */ RecordOpenOptionsEnum Options,
  435.             /* [optional][in] */ BSTR UserName,
  436.             /* [optional][in] */ BSTR Password) = 0;
  437.         
  438.     };
  439.     
  440. #else  /* C style interface */
  441.     typedef struct IDataSourceVtbl
  442.     {
  443.         BEGIN_INTERFACE
  444.         
  445.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  446.             IDataSource * This,
  447.             /* [in] */ REFIID riid,
  448.             /* [iid_is][out] */ void **ppvObject);
  449.         
  450.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  451.             IDataSource * This);
  452.         
  453.         ULONG ( STDMETHODCALLTYPE *Release )( 
  454.             IDataSource * This);
  455.         
  456.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  457.             IDataSource * This,
  458.             /* [out] */ UINT *pctinfo);
  459.         
  460.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  461.             IDataSource * This,
  462.             /* [in] */ UINT iTInfo,
  463.             /* [in] */ LCID lcid,
  464.             /* [out] */ ITypeInfo **ppTInfo);
  465.         
  466.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  467.             IDataSource * This,
  468.             /* [in] */ REFIID riid,
  469.             /* [size_is][in] */ LPOLESTR *rgszNames,
  470.             /* [in] */ UINT cNames,
  471.             /* [in] */ LCID lcid,
  472.             /* [size_is][out] */ DISPID *rgDispId);
  473.         
  474.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  475.             IDataSource * This,
  476.             /* [in] */ DISPID dispIdMember,
  477.             /* [in] */ REFIID riid,
  478.             /* [in] */ LCID lcid,
  479.             /* [in] */ WORD wFlags,
  480.             /* [out][in] */ DISPPARAMS *pDispParams,
  481.             /* [out] */ VARIANT *pVarResult,
  482.             /* [out] */ EXCEPINFO *pExcepInfo,
  483.             /* [out] */ UINT *puArgErr);
  484.         
  485.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SourceClass )( 
  486.             IDataSource * This,
  487.             /* [retval][out] */ BSTR *varSourceClass);
  488.         
  489.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Source )( 
  490.             IDataSource * This,
  491.             /* [retval][out] */ IUnknown **varSource);
  492.         
  493.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_IsDirty )( 
  494.             IDataSource * This,
  495.             /* [retval][out] */ VARIANT_BOOL *pIsDirty);
  496.         
  497.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IsDirty )( 
  498.             IDataSource * This,
  499.             /* [in] */ VARIANT_BOOL varIsDirty);
  500.         
  501.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SourceURL )( 
  502.             IDataSource * This,
  503.             /* [retval][out] */ BSTR *varSourceURL);
  504.         
  505.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ActiveConnection )( 
  506.             IDataSource * This,
  507.             /* [retval][out] */ _Connection **varActiveConnection);
  508.         
  509.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveToObject )( 
  510.             IDataSource * This,
  511.             /* [in] */ IUnknown *Source,
  512.             /* [in] */ BSTR InterfaceName);
  513.         
  514.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *OpenObject )( 
  515.             IDataSource * This,
  516.             /* [in] */ IUnknown *Source,
  517.             /* [in] */ BSTR InterfaceName);
  518.         
  519.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveTo )( 
  520.             IDataSource * This,
  521.             /* [in] */ BSTR SourceURL,
  522.             /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  523.             /* [optional][in] */ ConnectModeEnum Mode,
  524.             /* [optional][in] */ RecordCreateOptionsEnum CreateOptions,
  525.             /* [optional][in] */ RecordOpenOptionsEnum Options,
  526.             /* [optional][in] */ BSTR UserName,
  527.             /* [optional][in] */ BSTR Password);
  528.         
  529.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Open )( 
  530.             IDataSource * This,
  531.             /* [in] */ BSTR SourceURL,
  532.             /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  533.             /* [optional][in] */ ConnectModeEnum Mode,
  534.             /* [defaultvalue][in] */ RecordCreateOptionsEnum CreateOptions,
  535.             /* [optional][in] */ RecordOpenOptionsEnum Options,
  536.             /* [optional][in] */ BSTR UserName,
  537.             /* [optional][in] */ BSTR Password);
  538.         
  539.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Save )( 
  540.             IDataSource * This);
  541.         
  542.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveToContainer )( 
  543.             IDataSource * This,
  544.             /* [in] */ BSTR ContainerURL,
  545.             /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  546.             /* [optional][in] */ ConnectModeEnum Mode,
  547.             /* [optional][in] */ RecordCreateOptionsEnum CreateOptions,
  548.             /* [optional][in] */ RecordOpenOptionsEnum Options,
  549.             /* [optional][in] */ BSTR UserName,
  550.             /* [optional][in] */ BSTR Password);
  551.         
  552.         END_INTERFACE
  553.     } IDataSourceVtbl;
  554.     interface IDataSource
  555.     {
  556.         CONST_VTBL struct IDataSourceVtbl *lpVtbl;
  557.     };
  558.     
  559. #ifdef COBJMACROS
  560. #define IDataSource_QueryInterface(This,riid,ppvObject)
  561.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  562. #define IDataSource_AddRef(This)
  563.     (This)->lpVtbl -> AddRef(This)
  564. #define IDataSource_Release(This)
  565.     (This)->lpVtbl -> Release(This)
  566. #define IDataSource_GetTypeInfoCount(This,pctinfo)
  567.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  568. #define IDataSource_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  569.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  570. #define IDataSource_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  571.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  572. #define IDataSource_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  573.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  574. #define IDataSource_get_SourceClass(This,varSourceClass)
  575.     (This)->lpVtbl -> get_SourceClass(This,varSourceClass)
  576. #define IDataSource_get_Source(This,varSource)
  577.     (This)->lpVtbl -> get_Source(This,varSource)
  578. #define IDataSource_get_IsDirty(This,pIsDirty)
  579.     (This)->lpVtbl -> get_IsDirty(This,pIsDirty)
  580. #define IDataSource_put_IsDirty(This,varIsDirty)
  581.     (This)->lpVtbl -> put_IsDirty(This,varIsDirty)
  582. #define IDataSource_get_SourceURL(This,varSourceURL)
  583.     (This)->lpVtbl -> get_SourceURL(This,varSourceURL)
  584. #define IDataSource_get_ActiveConnection(This,varActiveConnection)
  585.     (This)->lpVtbl -> get_ActiveConnection(This,varActiveConnection)
  586. #define IDataSource_SaveToObject(This,Source,InterfaceName)
  587.     (This)->lpVtbl -> SaveToObject(This,Source,InterfaceName)
  588. #define IDataSource_OpenObject(This,Source,InterfaceName)
  589.     (This)->lpVtbl -> OpenObject(This,Source,InterfaceName)
  590. #define IDataSource_SaveTo(This,SourceURL,ActiveConnection,Mode,CreateOptions,Options,UserName,Password)
  591.     (This)->lpVtbl -> SaveTo(This,SourceURL,ActiveConnection,Mode,CreateOptions,Options,UserName,Password)
  592. #define IDataSource_Open(This,SourceURL,ActiveConnection,Mode,CreateOptions,Options,UserName,Password)
  593.     (This)->lpVtbl -> Open(This,SourceURL,ActiveConnection,Mode,CreateOptions,Options,UserName,Password)
  594. #define IDataSource_Save(This)
  595.     (This)->lpVtbl -> Save(This)
  596. #define IDataSource_SaveToContainer(This,ContainerURL,ActiveConnection,Mode,CreateOptions,Options,UserName,Password)
  597.     (This)->lpVtbl -> SaveToContainer(This,ContainerURL,ActiveConnection,Mode,CreateOptions,Options,UserName,Password)
  598. #endif /* COBJMACROS */
  599. #endif  /* C style interface */
  600. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IDataSource_get_SourceClass_Proxy( 
  601.     IDataSource * This,
  602.     /* [retval][out] */ BSTR *varSourceClass);
  603. void __RPC_STUB IDataSource_get_SourceClass_Stub(
  604.     IRpcStubBuffer *This,
  605.     IRpcChannelBuffer *_pRpcChannelBuffer,
  606.     PRPC_MESSAGE _pRpcMessage,
  607.     DWORD *_pdwStubPhase);
  608. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IDataSource_get_Source_Proxy( 
  609.     IDataSource * This,
  610.     /* [retval][out] */ IUnknown **varSource);
  611. void __RPC_STUB IDataSource_get_Source_Stub(
  612.     IRpcStubBuffer *This,
  613.     IRpcChannelBuffer *_pRpcChannelBuffer,
  614.     PRPC_MESSAGE _pRpcMessage,
  615.     DWORD *_pdwStubPhase);
  616. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IDataSource_get_IsDirty_Proxy( 
  617.     IDataSource * This,
  618.     /* [retval][out] */ VARIANT_BOOL *pIsDirty);
  619. void __RPC_STUB IDataSource_get_IsDirty_Stub(
  620.     IRpcStubBuffer *This,
  621.     IRpcChannelBuffer *_pRpcChannelBuffer,
  622.     PRPC_MESSAGE _pRpcMessage,
  623.     DWORD *_pdwStubPhase);
  624. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IDataSource_put_IsDirty_Proxy( 
  625.     IDataSource * This,
  626.     /* [in] */ VARIANT_BOOL varIsDirty);
  627. void __RPC_STUB IDataSource_put_IsDirty_Stub(
  628.     IRpcStubBuffer *This,
  629.     IRpcChannelBuffer *_pRpcChannelBuffer,
  630.     PRPC_MESSAGE _pRpcMessage,
  631.     DWORD *_pdwStubPhase);
  632. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IDataSource_get_SourceURL_Proxy( 
  633.     IDataSource * This,
  634.     /* [retval][out] */ BSTR *varSourceURL);
  635. void __RPC_STUB IDataSource_get_SourceURL_Stub(
  636.     IRpcStubBuffer *This,
  637.     IRpcChannelBuffer *_pRpcChannelBuffer,
  638.     PRPC_MESSAGE _pRpcMessage,
  639.     DWORD *_pdwStubPhase);
  640. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IDataSource_get_ActiveConnection_Proxy( 
  641.     IDataSource * This,
  642.     /* [retval][out] */ _Connection **varActiveConnection);
  643. void __RPC_STUB IDataSource_get_ActiveConnection_Stub(
  644.     IRpcStubBuffer *This,
  645.     IRpcChannelBuffer *_pRpcChannelBuffer,
  646.     PRPC_MESSAGE _pRpcMessage,
  647.     DWORD *_pdwStubPhase);
  648. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDataSource_SaveToObject_Proxy( 
  649.     IDataSource * This,
  650.     /* [in] */ IUnknown *Source,
  651.     /* [in] */ BSTR InterfaceName);
  652. void __RPC_STUB IDataSource_SaveToObject_Stub(
  653.     IRpcStubBuffer *This,
  654.     IRpcChannelBuffer *_pRpcChannelBuffer,
  655.     PRPC_MESSAGE _pRpcMessage,
  656.     DWORD *_pdwStubPhase);
  657. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDataSource_OpenObject_Proxy( 
  658.     IDataSource * This,
  659.     /* [in] */ IUnknown *Source,
  660.     /* [in] */ BSTR InterfaceName);
  661. void __RPC_STUB IDataSource_OpenObject_Stub(
  662.     IRpcStubBuffer *This,
  663.     IRpcChannelBuffer *_pRpcChannelBuffer,
  664.     PRPC_MESSAGE _pRpcMessage,
  665.     DWORD *_pdwStubPhase);
  666. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDataSource_SaveTo_Proxy( 
  667.     IDataSource * This,
  668.     /* [in] */ BSTR SourceURL,
  669.     /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  670.     /* [optional][in] */ ConnectModeEnum Mode,
  671.     /* [optional][in] */ RecordCreateOptionsEnum CreateOptions,
  672.     /* [optional][in] */ RecordOpenOptionsEnum Options,
  673.     /* [optional][in] */ BSTR UserName,
  674.     /* [optional][in] */ BSTR Password);
  675. void __RPC_STUB IDataSource_SaveTo_Stub(
  676.     IRpcStubBuffer *This,
  677.     IRpcChannelBuffer *_pRpcChannelBuffer,
  678.     PRPC_MESSAGE _pRpcMessage,
  679.     DWORD *_pdwStubPhase);
  680. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDataSource_Open_Proxy( 
  681.     IDataSource * This,
  682.     /* [in] */ BSTR SourceURL,
  683.     /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  684.     /* [optional][in] */ ConnectModeEnum Mode,
  685.     /* [defaultvalue][in] */ RecordCreateOptionsEnum CreateOptions,
  686.     /* [optional][in] */ RecordOpenOptionsEnum Options,
  687.     /* [optional][in] */ BSTR UserName,
  688.     /* [optional][in] */ BSTR Password);
  689. void __RPC_STUB IDataSource_Open_Stub(
  690.     IRpcStubBuffer *This,
  691.     IRpcChannelBuffer *_pRpcChannelBuffer,
  692.     PRPC_MESSAGE _pRpcMessage,
  693.     DWORD *_pdwStubPhase);
  694. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDataSource_Save_Proxy( 
  695.     IDataSource * This);
  696. void __RPC_STUB IDataSource_Save_Stub(
  697.     IRpcStubBuffer *This,
  698.     IRpcChannelBuffer *_pRpcChannelBuffer,
  699.     PRPC_MESSAGE _pRpcMessage,
  700.     DWORD *_pdwStubPhase);
  701. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IDataSource_SaveToContainer_Proxy( 
  702.     IDataSource * This,
  703.     /* [in] */ BSTR ContainerURL,
  704.     /* [defaultvalue][in] */ IDispatch *ActiveConnection,
  705.     /* [optional][in] */ ConnectModeEnum Mode,
  706.     /* [optional][in] */ RecordCreateOptionsEnum CreateOptions,
  707.     /* [optional][in] */ RecordOpenOptionsEnum Options,
  708.     /* [optional][in] */ BSTR UserName,
  709.     /* [optional][in] */ BSTR Password);
  710. void __RPC_STUB IDataSource_SaveToContainer_Stub(
  711.     IRpcStubBuffer *This,
  712.     IRpcChannelBuffer *_pRpcChannelBuffer,
  713.     PRPC_MESSAGE _pRpcMessage,
  714.     DWORD *_pdwStubPhase);
  715. #endif  /* __IDataSource_INTERFACE_DEFINED__ */
  716. #ifndef __IMessage_INTERFACE_DEFINED__
  717. #define __IMessage_INTERFACE_DEFINED__
  718. /* interface IMessage */
  719. /* [unique][helpcontext][helpstring][nonextensible][dual][uuid][object] */ 
  720. EXTERN_C const IID IID_IMessage;
  721. #if defined(__cplusplus) && !defined(CINTERFACE)
  722.     
  723.     MIDL_INTERFACE("CD000020-8B95-11D1-82DB-00C04FB1625D")
  724.     IMessage : public IDispatch
  725.     {
  726.     public:
  727.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_BCC( 
  728.             /* [retval][out] */ BSTR *pBCC) = 0;
  729.         
  730.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_BCC( 
  731.             /* [in] */ BSTR varBCC) = 0;
  732.         
  733.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_CC( 
  734.             /* [retval][out] */ BSTR *pCC) = 0;
  735.         
  736.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_CC( 
  737.             /* [in] */ BSTR varCC) = 0;
  738.         
  739.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_FollowUpTo( 
  740.             /* [retval][out] */ BSTR *pFollowUpTo) = 0;
  741.         
  742.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_FollowUpTo( 
  743.             /* [in] */ BSTR varFollowUpTo) = 0;
  744.         
  745.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_From( 
  746.             /* [retval][out] */ BSTR *pFrom) = 0;
  747.         
  748.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_From( 
  749.             /* [in] */ BSTR varFrom) = 0;
  750.         
  751.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Keywords( 
  752.             /* [retval][out] */ BSTR *pKeywords) = 0;
  753.         
  754.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Keywords( 
  755.             /* [in] */ BSTR varKeywords) = 0;
  756.         
  757.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_MimeFormatted( 
  758.             /* [retval][out] */ VARIANT_BOOL *pMimeFormatted) = 0;
  759.         
  760.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_MimeFormatted( 
  761.             /* [in] */ VARIANT_BOOL varMimeFormatted) = 0;
  762.         
  763.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Newsgroups( 
  764.             /* [retval][out] */ BSTR *pNewsgroups) = 0;
  765.         
  766.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Newsgroups( 
  767.             /* [in] */ BSTR varNewsgroups) = 0;
  768.         
  769.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Organization( 
  770.             /* [retval][out] */ BSTR *pOrganization) = 0;
  771.         
  772.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Organization( 
  773.             /* [in] */ BSTR varOrganization) = 0;
  774.         
  775.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_ReceivedTime( 
  776.             /* [retval][out] */ DATE *varReceivedTime) = 0;
  777.         
  778.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_ReplyTo( 
  779.             /* [retval][out] */ BSTR *pReplyTo) = 0;
  780.         
  781.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_ReplyTo( 
  782.             /* [in] */ BSTR varReplyTo) = 0;
  783.         
  784.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_DSNOptions( 
  785.             /* [retval][out] */ CdoDSNOptions *pDSNOptions) = 0;
  786.         
  787.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_DSNOptions( 
  788.             /* [in] */ CdoDSNOptions varDSNOptions) = 0;
  789.         
  790.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_SentOn( 
  791.             /* [retval][out] */ DATE *varSentOn) = 0;
  792.         
  793.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Subject( 
  794.             /* [retval][out] */ BSTR *pSubject) = 0;
  795.         
  796.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Subject( 
  797.             /* [in] */ BSTR varSubject) = 0;
  798.         
  799.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_To( 
  800.             /* [retval][out] */ BSTR *pTo) = 0;
  801.         
  802.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_To( 
  803.             /* [in] */ BSTR varTo) = 0;
  804.         
  805.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_TextBody( 
  806.             /* [retval][out] */ BSTR *pTextBody) = 0;
  807.         
  808.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_TextBody( 
  809.             /* [in] */ BSTR varTextBody) = 0;
  810.         
  811.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_HTMLBody( 
  812.             /* [retval][out] */ BSTR *pHTMLBody) = 0;
  813.         
  814.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_HTMLBody( 
  815.             /* [in] */ BSTR varHTMLBody) = 0;
  816.         
  817.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Attachments( 
  818.             /* [retval][out] */ IBodyParts **varAttachments) = 0;
  819.         
  820.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Sender( 
  821.             /* [retval][out] */ BSTR *pSender) = 0;
  822.         
  823.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Sender( 
  824.             /* [in] */ BSTR varSender) = 0;
  825.         
  826.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Configuration( 
  827.             /* [retval][out] */ IConfiguration **pConfiguration) = 0;
  828.         
  829.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Configuration( 
  830.             /* [in] */ IConfiguration *varConfiguration) = 0;
  831.         
  832.         virtual /* [helpcontext][helpstring][propputref][id] */ HRESULT STDMETHODCALLTYPE putref_Configuration( 
  833.             /* [in] */ IConfiguration *varConfiguration) = 0;
  834.         
  835.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_AutoGenerateTextBody( 
  836.             /* [retval][out] */ VARIANT_BOOL *pAutoGenerateTextBody) = 0;
  837.         
  838.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_AutoGenerateTextBody( 
  839.             /* [in] */ VARIANT_BOOL varAutoGenerateTextBody) = 0;
  840.         
  841.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_EnvelopeFields( 
  842.             /* [retval][out] */ Fields **varEnvelopeFields) = 0;
  843.         
  844.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_TextBodyPart( 
  845.             /* [retval][out] */ IBodyPart **varTextBodyPart) = 0;
  846.         
  847.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_HTMLBodyPart( 
  848.             /* [retval][out] */ IBodyPart **varHTMLBodyPart) = 0;
  849.         
  850.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_BodyPart( 
  851.             /* [retval][out] */ IBodyPart **varBodyPart) = 0;
  852.         
  853.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_DataSource( 
  854.             /* [retval][out] */ IDataSource **varDataSource) = 0;
  855.         
  856.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Fields( 
  857.             /* [retval][out] */ Fields **varFields) = 0;
  858.         
  859.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_MDNRequested( 
  860.             /* [retval][out] */ VARIANT_BOOL *pMDNRequested) = 0;
  861.         
  862.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_MDNRequested( 
  863.             /* [in] */ VARIANT_BOOL varMDNRequested) = 0;
  864.         
  865.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddRelatedBodyPart( 
  866.             /* [in] */ BSTR URL,
  867.             /* [in] */ BSTR Reference,
  868.             /* [in] */ CdoReferenceType ReferenceType,
  869.             /* [optional][in] */ BSTR UserName,
  870.             /* [optional][in] */ BSTR Password,
  871.             /* [retval][out] */ IBodyPart **ppBody) = 0;
  872.         
  873.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddAttachment( 
  874.             /* [in] */ BSTR URL,
  875.             /* [optional][in] */ BSTR UserName,
  876.             /* [optional][in] */ BSTR Password,
  877.             /* [retval][out] */ IBodyPart **ppBody) = 0;
  878.         
  879.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateMHTMLBody( 
  880.             /* [in] */ BSTR URL,
  881.             /* [defaultvalue][in] */ CdoMHTMLFlags Flags,
  882.             /* [optional][in] */ BSTR UserName,
  883.             /* [optional][in] */ BSTR Password) = 0;
  884.         
  885.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Forward( 
  886.             /* [retval][out] */ IMessage **ppMsg) = 0;
  887.         
  888.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Post( void) = 0;
  889.         
  890.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE PostReply( 
  891.             /* [retval][out] */ IMessage **ppMsg) = 0;
  892.         
  893.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Reply( 
  894.             /* [retval][out] */ IMessage **ppMsg) = 0;
  895.         
  896.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE ReplyAll( 
  897.             /* [retval][out] */ IMessage **ppMsg) = 0;
  898.         
  899.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE Send( void) = 0;
  900.         
  901.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetStream( 
  902.             /* [retval][out] */ _Stream **ppStream) = 0;
  903.         
  904.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetInterface( 
  905.             /* [in] */ BSTR Interface,
  906.             /* [retval][out] */ IDispatch **ppUnknown) = 0;
  907.         
  908.     };
  909.     
  910. #else  /* C style interface */
  911.     typedef struct IMessageVtbl
  912.     {
  913.         BEGIN_INTERFACE
  914.         
  915.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  916.             IMessage * This,
  917.             /* [in] */ REFIID riid,
  918.             /* [iid_is][out] */ void **ppvObject);
  919.         
  920.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  921.             IMessage * This);
  922.         
  923.         ULONG ( STDMETHODCALLTYPE *Release )( 
  924.             IMessage * This);
  925.         
  926.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  927.             IMessage * This,
  928.             /* [out] */ UINT *pctinfo);
  929.         
  930.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  931.             IMessage * This,
  932.             /* [in] */ UINT iTInfo,
  933.             /* [in] */ LCID lcid,
  934.             /* [out] */ ITypeInfo **ppTInfo);
  935.         
  936.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  937.             IMessage * This,
  938.             /* [in] */ REFIID riid,
  939.             /* [size_is][in] */ LPOLESTR *rgszNames,
  940.             /* [in] */ UINT cNames,
  941.             /* [in] */ LCID lcid,
  942.             /* [size_is][out] */ DISPID *rgDispId);
  943.         
  944.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  945.             IMessage * This,
  946.             /* [in] */ DISPID dispIdMember,
  947.             /* [in] */ REFIID riid,
  948.             /* [in] */ LCID lcid,
  949.             /* [in] */ WORD wFlags,
  950.             /* [out][in] */ DISPPARAMS *pDispParams,
  951.             /* [out] */ VARIANT *pVarResult,
  952.             /* [out] */ EXCEPINFO *pExcepInfo,
  953.             /* [out] */ UINT *puArgErr);
  954.         
  955.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BCC )( 
  956.             IMessage * This,
  957.             /* [retval][out] */ BSTR *pBCC);
  958.         
  959.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BCC )( 
  960.             IMessage * This,
  961.             /* [in] */ BSTR varBCC);
  962.         
  963.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CC )( 
  964.             IMessage * This,
  965.             /* [retval][out] */ BSTR *pCC);
  966.         
  967.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CC )( 
  968.             IMessage * This,
  969.             /* [in] */ BSTR varCC);
  970.         
  971.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FollowUpTo )( 
  972.             IMessage * This,
  973.             /* [retval][out] */ BSTR *pFollowUpTo);
  974.         
  975.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FollowUpTo )( 
  976.             IMessage * This,
  977.             /* [in] */ BSTR varFollowUpTo);
  978.         
  979.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_From )( 
  980.             IMessage * This,
  981.             /* [retval][out] */ BSTR *pFrom);
  982.         
  983.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_From )( 
  984.             IMessage * This,
  985.             /* [in] */ BSTR varFrom);
  986.         
  987.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Keywords )( 
  988.             IMessage * This,
  989.             /* [retval][out] */ BSTR *pKeywords);
  990.         
  991.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Keywords )( 
  992.             IMessage * This,
  993.             /* [in] */ BSTR varKeywords);
  994.         
  995.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MimeFormatted )( 
  996.             IMessage * This,
  997.             /* [retval][out] */ VARIANT_BOOL *pMimeFormatted);
  998.         
  999.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MimeFormatted )( 
  1000.             IMessage * This,
  1001.             /* [in] */ VARIANT_BOOL varMimeFormatted);
  1002.         
  1003.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Newsgroups )( 
  1004.             IMessage * This,
  1005.             /* [retval][out] */ BSTR *pNewsgroups);
  1006.         
  1007.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Newsgroups )( 
  1008.             IMessage * This,
  1009.             /* [in] */ BSTR varNewsgroups);
  1010.         
  1011.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Organization )( 
  1012.             IMessage * This,
  1013.             /* [retval][out] */ BSTR *pOrganization);
  1014.         
  1015.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Organization )( 
  1016.             IMessage * This,
  1017.             /* [in] */ BSTR varOrganization);
  1018.         
  1019.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ReceivedTime )( 
  1020.             IMessage * This,
  1021.             /* [retval][out] */ DATE *varReceivedTime);
  1022.         
  1023.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ReplyTo )( 
  1024.             IMessage * This,
  1025.             /* [retval][out] */ BSTR *pReplyTo);
  1026.         
  1027.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ReplyTo )( 
  1028.             IMessage * This,
  1029.             /* [in] */ BSTR varReplyTo);
  1030.         
  1031.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DSNOptions )( 
  1032.             IMessage * This,
  1033.             /* [retval][out] */ CdoDSNOptions *pDSNOptions);
  1034.         
  1035.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DSNOptions )( 
  1036.             IMessage * This,
  1037.             /* [in] */ CdoDSNOptions varDSNOptions);
  1038.         
  1039.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SentOn )( 
  1040.             IMessage * This,
  1041.             /* [retval][out] */ DATE *varSentOn);
  1042.         
  1043.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Subject )( 
  1044.             IMessage * This,
  1045.             /* [retval][out] */ BSTR *pSubject);
  1046.         
  1047.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Subject )( 
  1048.             IMessage * This,
  1049.             /* [in] */ BSTR varSubject);
  1050.         
  1051.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_To )( 
  1052.             IMessage * This,
  1053.             /* [retval][out] */ BSTR *pTo);
  1054.         
  1055.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_To )( 
  1056.             IMessage * This,
  1057.             /* [in] */ BSTR varTo);
  1058.         
  1059.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TextBody )( 
  1060.             IMessage * This,
  1061.             /* [retval][out] */ BSTR *pTextBody);
  1062.         
  1063.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TextBody )( 
  1064.             IMessage * This,
  1065.             /* [in] */ BSTR varTextBody);
  1066.         
  1067.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HTMLBody )( 
  1068.             IMessage * This,
  1069.             /* [retval][out] */ BSTR *pHTMLBody);
  1070.         
  1071.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HTMLBody )( 
  1072.             IMessage * This,
  1073.             /* [in] */ BSTR varHTMLBody);
  1074.         
  1075.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Attachments )( 
  1076.             IMessage * This,
  1077.             /* [retval][out] */ IBodyParts **varAttachments);
  1078.         
  1079.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Sender )( 
  1080.             IMessage * This,
  1081.             /* [retval][out] */ BSTR *pSender);
  1082.         
  1083.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Sender )( 
  1084.             IMessage * This,
  1085.             /* [in] */ BSTR varSender);
  1086.         
  1087.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Configuration )( 
  1088.             IMessage * This,
  1089.             /* [retval][out] */ IConfiguration **pConfiguration);
  1090.         
  1091.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Configuration )( 
  1092.             IMessage * This,
  1093.             /* [in] */ IConfiguration *varConfiguration);
  1094.         
  1095.         /* [helpcontext][helpstring][propputref][id] */ HRESULT ( STDMETHODCALLTYPE *putref_Configuration )( 
  1096.             IMessage * This,
  1097.             /* [in] */ IConfiguration *varConfiguration);
  1098.         
  1099.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AutoGenerateTextBody )( 
  1100.             IMessage * This,
  1101.             /* [retval][out] */ VARIANT_BOOL *pAutoGenerateTextBody);
  1102.         
  1103.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AutoGenerateTextBody )( 
  1104.             IMessage * This,
  1105.             /* [in] */ VARIANT_BOOL varAutoGenerateTextBody);
  1106.         
  1107.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnvelopeFields )( 
  1108.             IMessage * This,
  1109.             /* [retval][out] */ Fields **varEnvelopeFields);
  1110.         
  1111.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TextBodyPart )( 
  1112.             IMessage * This,
  1113.             /* [retval][out] */ IBodyPart **varTextBodyPart);
  1114.         
  1115.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HTMLBodyPart )( 
  1116.             IMessage * This,
  1117.             /* [retval][out] */ IBodyPart **varHTMLBodyPart);
  1118.         
  1119.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BodyPart )( 
  1120.             IMessage * This,
  1121.             /* [retval][out] */ IBodyPart **varBodyPart);
  1122.         
  1123.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DataSource )( 
  1124.             IMessage * This,
  1125.             /* [retval][out] */ IDataSource **varDataSource);
  1126.         
  1127.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Fields )( 
  1128.             IMessage * This,
  1129.             /* [retval][out] */ Fields **varFields);
  1130.         
  1131.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MDNRequested )( 
  1132.             IMessage * This,
  1133.             /* [retval][out] */ VARIANT_BOOL *pMDNRequested);
  1134.         
  1135.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MDNRequested )( 
  1136.             IMessage * This,
  1137.             /* [in] */ VARIANT_BOOL varMDNRequested);
  1138.         
  1139.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddRelatedBodyPart )( 
  1140.             IMessage * This,
  1141.             /* [in] */ BSTR URL,
  1142.             /* [in] */ BSTR Reference,
  1143.             /* [in] */ CdoReferenceType ReferenceType,
  1144.             /* [optional][in] */ BSTR UserName,
  1145.             /* [optional][in] */ BSTR Password,
  1146.             /* [retval][out] */ IBodyPart **ppBody);
  1147.         
  1148.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddAttachment )( 
  1149.             IMessage * This,
  1150.             /* [in] */ BSTR URL,
  1151.             /* [optional][in] */ BSTR UserName,
  1152.             /* [optional][in] */ BSTR Password,
  1153.             /* [retval][out] */ IBodyPart **ppBody);
  1154.         
  1155.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateMHTMLBody )( 
  1156.             IMessage * This,
  1157.             /* [in] */ BSTR URL,
  1158.             /* [defaultvalue][in] */ CdoMHTMLFlags Flags,
  1159.             /* [optional][in] */ BSTR UserName,
  1160.             /* [optional][in] */ BSTR Password);
  1161.         
  1162.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Forward )( 
  1163.             IMessage * This,
  1164.             /* [retval][out] */ IMessage **ppMsg);
  1165.         
  1166.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Post )( 
  1167.             IMessage * This);
  1168.         
  1169.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *PostReply )( 
  1170.             IMessage * This,
  1171.             /* [retval][out] */ IMessage **ppMsg);
  1172.         
  1173.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Reply )( 
  1174.             IMessage * This,
  1175.             /* [retval][out] */ IMessage **ppMsg);
  1176.         
  1177.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReplyAll )( 
  1178.             IMessage * This,
  1179.             /* [retval][out] */ IMessage **ppMsg);
  1180.         
  1181.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Send )( 
  1182.             IMessage * This);
  1183.         
  1184.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetStream )( 
  1185.             IMessage * This,
  1186.             /* [retval][out] */ _Stream **ppStream);
  1187.         
  1188.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetInterface )( 
  1189.             IMessage * This,
  1190.             /* [in] */ BSTR Interface,
  1191.             /* [retval][out] */ IDispatch **ppUnknown);
  1192.         
  1193.         END_INTERFACE
  1194.     } IMessageVtbl;
  1195.     interface IMessage
  1196.     {
  1197.         CONST_VTBL struct IMessageVtbl *lpVtbl;
  1198.     };
  1199.     
  1200. #ifdef COBJMACROS
  1201. #define IMessage_QueryInterface(This,riid,ppvObject)
  1202.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1203. #define IMessage_AddRef(This)
  1204.     (This)->lpVtbl -> AddRef(This)
  1205. #define IMessage_Release(This)
  1206.     (This)->lpVtbl -> Release(This)
  1207. #define IMessage_GetTypeInfoCount(This,pctinfo)
  1208.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1209. #define IMessage_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1210.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1211. #define IMessage_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1212.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1213. #define IMessage_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1214.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1215. #define IMessage_get_BCC(This,pBCC)
  1216.     (This)->lpVtbl -> get_BCC(This,pBCC)
  1217. #define IMessage_put_BCC(This,varBCC)
  1218.     (This)->lpVtbl -> put_BCC(This,varBCC)
  1219. #define IMessage_get_CC(This,pCC)
  1220.     (This)->lpVtbl -> get_CC(This,pCC)
  1221. #define IMessage_put_CC(This,varCC)
  1222.     (This)->lpVtbl -> put_CC(This,varCC)
  1223. #define IMessage_get_FollowUpTo(This,pFollowUpTo)
  1224.     (This)->lpVtbl -> get_FollowUpTo(This,pFollowUpTo)
  1225. #define IMessage_put_FollowUpTo(This,varFollowUpTo)
  1226.     (This)->lpVtbl -> put_FollowUpTo(This,varFollowUpTo)
  1227. #define IMessage_get_From(This,pFrom)
  1228.     (This)->lpVtbl -> get_From(This,pFrom)
  1229. #define IMessage_put_From(This,varFrom)
  1230.     (This)->lpVtbl -> put_From(This,varFrom)
  1231. #define IMessage_get_Keywords(This,pKeywords)
  1232.     (This)->lpVtbl -> get_Keywords(This,pKeywords)
  1233. #define IMessage_put_Keywords(This,varKeywords)
  1234.     (This)->lpVtbl -> put_Keywords(This,varKeywords)
  1235. #define IMessage_get_MimeFormatted(This,pMimeFormatted)
  1236.     (This)->lpVtbl -> get_MimeFormatted(This,pMimeFormatted)
  1237. #define IMessage_put_MimeFormatted(This,varMimeFormatted)
  1238.     (This)->lpVtbl -> put_MimeFormatted(This,varMimeFormatted)
  1239. #define IMessage_get_Newsgroups(This,pNewsgroups)
  1240.     (This)->lpVtbl -> get_Newsgroups(This,pNewsgroups)
  1241. #define IMessage_put_Newsgroups(This,varNewsgroups)
  1242.     (This)->lpVtbl -> put_Newsgroups(This,varNewsgroups)
  1243. #define IMessage_get_Organization(This,pOrganization)
  1244.     (This)->lpVtbl -> get_Organization(This,pOrganization)
  1245. #define IMessage_put_Organization(This,varOrganization)
  1246.     (This)->lpVtbl -> put_Organization(This,varOrganization)
  1247. #define IMessage_get_ReceivedTime(This,varReceivedTime)
  1248.     (This)->lpVtbl -> get_ReceivedTime(This,varReceivedTime)
  1249. #define IMessage_get_ReplyTo(This,pReplyTo)
  1250.     (This)->lpVtbl -> get_ReplyTo(This,pReplyTo)
  1251. #define IMessage_put_ReplyTo(This,varReplyTo)
  1252.     (This)->lpVtbl -> put_ReplyTo(This,varReplyTo)
  1253. #define IMessage_get_DSNOptions(This,pDSNOptions)
  1254.     (This)->lpVtbl -> get_DSNOptions(This,pDSNOptions)
  1255. #define IMessage_put_DSNOptions(This,varDSNOptions)
  1256.     (This)->lpVtbl -> put_DSNOptions(This,varDSNOptions)
  1257. #define IMessage_get_SentOn(This,varSentOn)
  1258.     (This)->lpVtbl -> get_SentOn(This,varSentOn)
  1259. #define IMessage_get_Subject(This,pSubject)
  1260.     (This)->lpVtbl -> get_Subject(This,pSubject)
  1261. #define IMessage_put_Subject(This,varSubject)
  1262.     (This)->lpVtbl -> put_Subject(This,varSubject)
  1263. #define IMessage_get_To(This,pTo)
  1264.     (This)->lpVtbl -> get_To(This,pTo)
  1265. #define IMessage_put_To(This,varTo)
  1266.     (This)->lpVtbl -> put_To(This,varTo)
  1267. #define IMessage_get_TextBody(This,pTextBody)
  1268.     (This)->lpVtbl -> get_TextBody(This,pTextBody)
  1269. #define IMessage_put_TextBody(This,varTextBody)
  1270.     (This)->lpVtbl -> put_TextBody(This,varTextBody)
  1271. #define IMessage_get_HTMLBody(This,pHTMLBody)
  1272.     (This)->lpVtbl -> get_HTMLBody(This,pHTMLBody)
  1273. #define IMessage_put_HTMLBody(This,varHTMLBody)
  1274.     (This)->lpVtbl -> put_HTMLBody(This,varHTMLBody)
  1275. #define IMessage_get_Attachments(This,varAttachments)
  1276.     (This)->lpVtbl -> get_Attachments(This,varAttachments)
  1277. #define IMessage_get_Sender(This,pSender)
  1278.     (This)->lpVtbl -> get_Sender(This,pSender)
  1279. #define IMessage_put_Sender(This,varSender)
  1280.     (This)->lpVtbl -> put_Sender(This,varSender)
  1281. #define IMessage_get_Configuration(This,pConfiguration)
  1282.     (This)->lpVtbl -> get_Configuration(This,pConfiguration)
  1283. #define IMessage_put_Configuration(This,varConfiguration)
  1284.     (This)->lpVtbl -> put_Configuration(This,varConfiguration)
  1285. #define IMessage_putref_Configuration(This,varConfiguration)
  1286.     (This)->lpVtbl -> putref_Configuration(This,varConfiguration)
  1287. #define IMessage_get_AutoGenerateTextBody(This,pAutoGenerateTextBody)
  1288.     (This)->lpVtbl -> get_AutoGenerateTextBody(This,pAutoGenerateTextBody)
  1289. #define IMessage_put_AutoGenerateTextBody(This,varAutoGenerateTextBody)
  1290.     (This)->lpVtbl -> put_AutoGenerateTextBody(This,varAutoGenerateTextBody)
  1291. #define IMessage_get_EnvelopeFields(This,varEnvelopeFields)
  1292.     (This)->lpVtbl -> get_EnvelopeFields(This,varEnvelopeFields)
  1293. #define IMessage_get_TextBodyPart(This,varTextBodyPart)
  1294.     (This)->lpVtbl -> get_TextBodyPart(This,varTextBodyPart)
  1295. #define IMessage_get_HTMLBodyPart(This,varHTMLBodyPart)
  1296.     (This)->lpVtbl -> get_HTMLBodyPart(This,varHTMLBodyPart)
  1297. #define IMessage_get_BodyPart(This,varBodyPart)
  1298.     (This)->lpVtbl -> get_BodyPart(This,varBodyPart)
  1299. #define IMessage_get_DataSource(This,varDataSource)
  1300.     (This)->lpVtbl -> get_DataSource(This,varDataSource)
  1301. #define IMessage_get_Fields(This,varFields)
  1302.     (This)->lpVtbl -> get_Fields(This,varFields)
  1303. #define IMessage_get_MDNRequested(This,pMDNRequested)
  1304.     (This)->lpVtbl -> get_MDNRequested(This,pMDNRequested)
  1305. #define IMessage_put_MDNRequested(This,varMDNRequested)
  1306.     (This)->lpVtbl -> put_MDNRequested(This,varMDNRequested)
  1307. #define IMessage_AddRelatedBodyPart(This,URL,Reference,ReferenceType,UserName,Password,ppBody)
  1308.     (This)->lpVtbl -> AddRelatedBodyPart(This,URL,Reference,ReferenceType,UserName,Password,ppBody)
  1309. #define IMessage_AddAttachment(This,URL,UserName,Password,ppBody)
  1310.     (This)->lpVtbl -> AddAttachment(This,URL,UserName,Password,ppBody)
  1311. #define IMessage_CreateMHTMLBody(This,URL,Flags,UserName,Password)
  1312.     (This)->lpVtbl -> CreateMHTMLBody(This,URL,Flags,UserName,Password)
  1313. #define IMessage_Forward(This,ppMsg)
  1314.     (This)->lpVtbl -> Forward(This,ppMsg)
  1315. #define IMessage_Post(This)
  1316.     (This)->lpVtbl -> Post(This)
  1317. #define IMessage_PostReply(This,ppMsg)
  1318.     (This)->lpVtbl -> PostReply(This,ppMsg)
  1319. #define IMessage_Reply(This,ppMsg)
  1320.     (This)->lpVtbl -> Reply(This,ppMsg)
  1321. #define IMessage_ReplyAll(This,ppMsg)
  1322.     (This)->lpVtbl -> ReplyAll(This,ppMsg)
  1323. #define IMessage_Send(This)
  1324.     (This)->lpVtbl -> Send(This)
  1325. #define IMessage_GetStream(This,ppStream)
  1326.     (This)->lpVtbl -> GetStream(This,ppStream)
  1327. #define IMessage_GetInterface(This,Interface,ppUnknown)
  1328.     (This)->lpVtbl -> GetInterface(This,Interface,ppUnknown)
  1329. #endif /* COBJMACROS */
  1330. #endif  /* C style interface */
  1331. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_BCC_Proxy( 
  1332.     IMessage * This,
  1333.     /* [retval][out] */ BSTR *pBCC);
  1334. void __RPC_STUB IMessage_get_BCC_Stub(
  1335.     IRpcStubBuffer *This,
  1336.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1337.     PRPC_MESSAGE _pRpcMessage,
  1338.     DWORD *_pdwStubPhase);
  1339. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_BCC_Proxy( 
  1340.     IMessage * This,
  1341.     /* [in] */ BSTR varBCC);
  1342. void __RPC_STUB IMessage_put_BCC_Stub(
  1343.     IRpcStubBuffer *This,
  1344.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1345.     PRPC_MESSAGE _pRpcMessage,
  1346.     DWORD *_pdwStubPhase);
  1347. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_CC_Proxy( 
  1348.     IMessage * This,
  1349.     /* [retval][out] */ BSTR *pCC);
  1350. void __RPC_STUB IMessage_get_CC_Stub(
  1351.     IRpcStubBuffer *This,
  1352.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1353.     PRPC_MESSAGE _pRpcMessage,
  1354.     DWORD *_pdwStubPhase);
  1355. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_CC_Proxy( 
  1356.     IMessage * This,
  1357.     /* [in] */ BSTR varCC);
  1358. void __RPC_STUB IMessage_put_CC_Stub(
  1359.     IRpcStubBuffer *This,
  1360.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1361.     PRPC_MESSAGE _pRpcMessage,
  1362.     DWORD *_pdwStubPhase);
  1363. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_FollowUpTo_Proxy( 
  1364.     IMessage * This,
  1365.     /* [retval][out] */ BSTR *pFollowUpTo);
  1366. void __RPC_STUB IMessage_get_FollowUpTo_Stub(
  1367.     IRpcStubBuffer *This,
  1368.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1369.     PRPC_MESSAGE _pRpcMessage,
  1370.     DWORD *_pdwStubPhase);
  1371. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_FollowUpTo_Proxy( 
  1372.     IMessage * This,
  1373.     /* [in] */ BSTR varFollowUpTo);
  1374. void __RPC_STUB IMessage_put_FollowUpTo_Stub(
  1375.     IRpcStubBuffer *This,
  1376.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1377.     PRPC_MESSAGE _pRpcMessage,
  1378.     DWORD *_pdwStubPhase);
  1379. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_From_Proxy( 
  1380.     IMessage * This,
  1381.     /* [retval][out] */ BSTR *pFrom);
  1382. void __RPC_STUB IMessage_get_From_Stub(
  1383.     IRpcStubBuffer *This,
  1384.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1385.     PRPC_MESSAGE _pRpcMessage,
  1386.     DWORD *_pdwStubPhase);
  1387. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_From_Proxy( 
  1388.     IMessage * This,
  1389.     /* [in] */ BSTR varFrom);
  1390. void __RPC_STUB IMessage_put_From_Stub(
  1391.     IRpcStubBuffer *This,
  1392.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1393.     PRPC_MESSAGE _pRpcMessage,
  1394.     DWORD *_pdwStubPhase);
  1395. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_Keywords_Proxy( 
  1396.     IMessage * This,
  1397.     /* [retval][out] */ BSTR *pKeywords);
  1398. void __RPC_STUB IMessage_get_Keywords_Stub(
  1399.     IRpcStubBuffer *This,
  1400.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1401.     PRPC_MESSAGE _pRpcMessage,
  1402.     DWORD *_pdwStubPhase);
  1403. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_Keywords_Proxy( 
  1404.     IMessage * This,
  1405.     /* [in] */ BSTR varKeywords);
  1406. void __RPC_STUB IMessage_put_Keywords_Stub(
  1407.     IRpcStubBuffer *This,
  1408.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1409.     PRPC_MESSAGE _pRpcMessage,
  1410.     DWORD *_pdwStubPhase);
  1411. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_MimeFormatted_Proxy( 
  1412.     IMessage * This,
  1413.     /* [retval][out] */ VARIANT_BOOL *pMimeFormatted);
  1414. void __RPC_STUB IMessage_get_MimeFormatted_Stub(
  1415.     IRpcStubBuffer *This,
  1416.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1417.     PRPC_MESSAGE _pRpcMessage,
  1418.     DWORD *_pdwStubPhase);
  1419. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_MimeFormatted_Proxy( 
  1420.     IMessage * This,
  1421.     /* [in] */ VARIANT_BOOL varMimeFormatted);
  1422. void __RPC_STUB IMessage_put_MimeFormatted_Stub(
  1423.     IRpcStubBuffer *This,
  1424.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1425.     PRPC_MESSAGE _pRpcMessage,
  1426.     DWORD *_pdwStubPhase);
  1427. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_Newsgroups_Proxy( 
  1428.     IMessage * This,
  1429.     /* [retval][out] */ BSTR *pNewsgroups);
  1430. void __RPC_STUB IMessage_get_Newsgroups_Stub(
  1431.     IRpcStubBuffer *This,
  1432.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1433.     PRPC_MESSAGE _pRpcMessage,
  1434.     DWORD *_pdwStubPhase);
  1435. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_Newsgroups_Proxy( 
  1436.     IMessage * This,
  1437.     /* [in] */ BSTR varNewsgroups);
  1438. void __RPC_STUB IMessage_put_Newsgroups_Stub(
  1439.     IRpcStubBuffer *This,
  1440.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1441.     PRPC_MESSAGE _pRpcMessage,
  1442.     DWORD *_pdwStubPhase);
  1443. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_Organization_Proxy( 
  1444.     IMessage * This,
  1445.     /* [retval][out] */ BSTR *pOrganization);
  1446. void __RPC_STUB IMessage_get_Organization_Stub(
  1447.     IRpcStubBuffer *This,
  1448.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1449.     PRPC_MESSAGE _pRpcMessage,
  1450.     DWORD *_pdwStubPhase);
  1451. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_Organization_Proxy( 
  1452.     IMessage * This,
  1453.     /* [in] */ BSTR varOrganization);
  1454. void __RPC_STUB IMessage_put_Organization_Stub(
  1455.     IRpcStubBuffer *This,
  1456.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1457.     PRPC_MESSAGE _pRpcMessage,
  1458.     DWORD *_pdwStubPhase);
  1459. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_ReceivedTime_Proxy( 
  1460.     IMessage * This,
  1461.     /* [retval][out] */ DATE *varReceivedTime);
  1462. void __RPC_STUB IMessage_get_ReceivedTime_Stub(
  1463.     IRpcStubBuffer *This,
  1464.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1465.     PRPC_MESSAGE _pRpcMessage,
  1466.     DWORD *_pdwStubPhase);
  1467. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_ReplyTo_Proxy( 
  1468.     IMessage * This,
  1469.     /* [retval][out] */ BSTR *pReplyTo);
  1470. void __RPC_STUB IMessage_get_ReplyTo_Stub(
  1471.     IRpcStubBuffer *This,
  1472.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1473.     PRPC_MESSAGE _pRpcMessage,
  1474.     DWORD *_pdwStubPhase);
  1475. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_ReplyTo_Proxy( 
  1476.     IMessage * This,
  1477.     /* [in] */ BSTR varReplyTo);
  1478. void __RPC_STUB IMessage_put_ReplyTo_Stub(
  1479.     IRpcStubBuffer *This,
  1480.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1481.     PRPC_MESSAGE _pRpcMessage,
  1482.     DWORD *_pdwStubPhase);
  1483. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_DSNOptions_Proxy( 
  1484.     IMessage * This,
  1485.     /* [retval][out] */ CdoDSNOptions *pDSNOptions);
  1486. void __RPC_STUB IMessage_get_DSNOptions_Stub(
  1487.     IRpcStubBuffer *This,
  1488.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1489.     PRPC_MESSAGE _pRpcMessage,
  1490.     DWORD *_pdwStubPhase);
  1491. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_DSNOptions_Proxy( 
  1492.     IMessage * This,
  1493.     /* [in] */ CdoDSNOptions varDSNOptions);
  1494. void __RPC_STUB IMessage_put_DSNOptions_Stub(
  1495.     IRpcStubBuffer *This,
  1496.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1497.     PRPC_MESSAGE _pRpcMessage,
  1498.     DWORD *_pdwStubPhase);
  1499. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_SentOn_Proxy( 
  1500.     IMessage * This,
  1501.     /* [retval][out] */ DATE *varSentOn);
  1502. void __RPC_STUB IMessage_get_SentOn_Stub(
  1503.     IRpcStubBuffer *This,
  1504.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1505.     PRPC_MESSAGE _pRpcMessage,
  1506.     DWORD *_pdwStubPhase);
  1507. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_Subject_Proxy( 
  1508.     IMessage * This,
  1509.     /* [retval][out] */ BSTR *pSubject);
  1510. void __RPC_STUB IMessage_get_Subject_Stub(
  1511.     IRpcStubBuffer *This,
  1512.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1513.     PRPC_MESSAGE _pRpcMessage,
  1514.     DWORD *_pdwStubPhase);
  1515. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_Subject_Proxy( 
  1516.     IMessage * This,
  1517.     /* [in] */ BSTR varSubject);
  1518. void __RPC_STUB IMessage_put_Subject_Stub(
  1519.     IRpcStubBuffer *This,
  1520.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1521.     PRPC_MESSAGE _pRpcMessage,
  1522.     DWORD *_pdwStubPhase);
  1523. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_To_Proxy( 
  1524.     IMessage * This,
  1525.     /* [retval][out] */ BSTR *pTo);
  1526. void __RPC_STUB IMessage_get_To_Stub(
  1527.     IRpcStubBuffer *This,
  1528.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1529.     PRPC_MESSAGE _pRpcMessage,
  1530.     DWORD *_pdwStubPhase);
  1531. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_To_Proxy( 
  1532.     IMessage * This,
  1533.     /* [in] */ BSTR varTo);
  1534. void __RPC_STUB IMessage_put_To_Stub(
  1535.     IRpcStubBuffer *This,
  1536.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1537.     PRPC_MESSAGE _pRpcMessage,
  1538.     DWORD *_pdwStubPhase);
  1539. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_TextBody_Proxy( 
  1540.     IMessage * This,
  1541.     /* [retval][out] */ BSTR *pTextBody);
  1542. void __RPC_STUB IMessage_get_TextBody_Stub(
  1543.     IRpcStubBuffer *This,
  1544.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1545.     PRPC_MESSAGE _pRpcMessage,
  1546.     DWORD *_pdwStubPhase);
  1547. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_TextBody_Proxy( 
  1548.     IMessage * This,
  1549.     /* [in] */ BSTR varTextBody);
  1550. void __RPC_STUB IMessage_put_TextBody_Stub(
  1551.     IRpcStubBuffer *This,
  1552.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1553.     PRPC_MESSAGE _pRpcMessage,
  1554.     DWORD *_pdwStubPhase);
  1555. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_HTMLBody_Proxy( 
  1556.     IMessage * This,
  1557.     /* [retval][out] */ BSTR *pHTMLBody);
  1558. void __RPC_STUB IMessage_get_HTMLBody_Stub(
  1559.     IRpcStubBuffer *This,
  1560.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1561.     PRPC_MESSAGE _pRpcMessage,
  1562.     DWORD *_pdwStubPhase);
  1563. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_HTMLBody_Proxy( 
  1564.     IMessage * This,
  1565.     /* [in] */ BSTR varHTMLBody);
  1566. void __RPC_STUB IMessage_put_HTMLBody_Stub(
  1567.     IRpcStubBuffer *This,
  1568.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1569.     PRPC_MESSAGE _pRpcMessage,
  1570.     DWORD *_pdwStubPhase);
  1571. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_Attachments_Proxy( 
  1572.     IMessage * This,
  1573.     /* [retval][out] */ IBodyParts **varAttachments);
  1574. void __RPC_STUB IMessage_get_Attachments_Stub(
  1575.     IRpcStubBuffer *This,
  1576.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1577.     PRPC_MESSAGE _pRpcMessage,
  1578.     DWORD *_pdwStubPhase);
  1579. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_Sender_Proxy( 
  1580.     IMessage * This,
  1581.     /* [retval][out] */ BSTR *pSender);
  1582. void __RPC_STUB IMessage_get_Sender_Stub(
  1583.     IRpcStubBuffer *This,
  1584.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1585.     PRPC_MESSAGE _pRpcMessage,
  1586.     DWORD *_pdwStubPhase);
  1587. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_Sender_Proxy( 
  1588.     IMessage * This,
  1589.     /* [in] */ BSTR varSender);
  1590. void __RPC_STUB IMessage_put_Sender_Stub(
  1591.     IRpcStubBuffer *This,
  1592.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1593.     PRPC_MESSAGE _pRpcMessage,
  1594.     DWORD *_pdwStubPhase);
  1595. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_Configuration_Proxy( 
  1596.     IMessage * This,
  1597.     /* [retval][out] */ IConfiguration **pConfiguration);
  1598. void __RPC_STUB IMessage_get_Configuration_Stub(
  1599.     IRpcStubBuffer *This,
  1600.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1601.     PRPC_MESSAGE _pRpcMessage,
  1602.     DWORD *_pdwStubPhase);
  1603. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_Configuration_Proxy( 
  1604.     IMessage * This,
  1605.     /* [in] */ IConfiguration *varConfiguration);
  1606. void __RPC_STUB IMessage_put_Configuration_Stub(
  1607.     IRpcStubBuffer *This,
  1608.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1609.     PRPC_MESSAGE _pRpcMessage,
  1610.     DWORD *_pdwStubPhase);
  1611. /* [helpcontext][helpstring][propputref][id] */ HRESULT STDMETHODCALLTYPE IMessage_putref_Configuration_Proxy( 
  1612.     IMessage * This,
  1613.     /* [in] */ IConfiguration *varConfiguration);
  1614. void __RPC_STUB IMessage_putref_Configuration_Stub(
  1615.     IRpcStubBuffer *This,
  1616.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1617.     PRPC_MESSAGE _pRpcMessage,
  1618.     DWORD *_pdwStubPhase);
  1619. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_AutoGenerateTextBody_Proxy( 
  1620.     IMessage * This,
  1621.     /* [retval][out] */ VARIANT_BOOL *pAutoGenerateTextBody);
  1622. void __RPC_STUB IMessage_get_AutoGenerateTextBody_Stub(
  1623.     IRpcStubBuffer *This,
  1624.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1625.     PRPC_MESSAGE _pRpcMessage,
  1626.     DWORD *_pdwStubPhase);
  1627. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_AutoGenerateTextBody_Proxy( 
  1628.     IMessage * This,
  1629.     /* [in] */ VARIANT_BOOL varAutoGenerateTextBody);
  1630. void __RPC_STUB IMessage_put_AutoGenerateTextBody_Stub(
  1631.     IRpcStubBuffer *This,
  1632.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1633.     PRPC_MESSAGE _pRpcMessage,
  1634.     DWORD *_pdwStubPhase);
  1635. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_EnvelopeFields_Proxy( 
  1636.     IMessage * This,
  1637.     /* [retval][out] */ Fields **varEnvelopeFields);
  1638. void __RPC_STUB IMessage_get_EnvelopeFields_Stub(
  1639.     IRpcStubBuffer *This,
  1640.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1641.     PRPC_MESSAGE _pRpcMessage,
  1642.     DWORD *_pdwStubPhase);
  1643. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_TextBodyPart_Proxy( 
  1644.     IMessage * This,
  1645.     /* [retval][out] */ IBodyPart **varTextBodyPart);
  1646. void __RPC_STUB IMessage_get_TextBodyPart_Stub(
  1647.     IRpcStubBuffer *This,
  1648.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1649.     PRPC_MESSAGE _pRpcMessage,
  1650.     DWORD *_pdwStubPhase);
  1651. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_HTMLBodyPart_Proxy( 
  1652.     IMessage * This,
  1653.     /* [retval][out] */ IBodyPart **varHTMLBodyPart);
  1654. void __RPC_STUB IMessage_get_HTMLBodyPart_Stub(
  1655.     IRpcStubBuffer *This,
  1656.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1657.     PRPC_MESSAGE _pRpcMessage,
  1658.     DWORD *_pdwStubPhase);
  1659. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_BodyPart_Proxy( 
  1660.     IMessage * This,
  1661.     /* [retval][out] */ IBodyPart **varBodyPart);
  1662. void __RPC_STUB IMessage_get_BodyPart_Stub(
  1663.     IRpcStubBuffer *This,
  1664.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1665.     PRPC_MESSAGE _pRpcMessage,
  1666.     DWORD *_pdwStubPhase);
  1667. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_DataSource_Proxy( 
  1668.     IMessage * This,
  1669.     /* [retval][out] */ IDataSource **varDataSource);
  1670. void __RPC_STUB IMessage_get_DataSource_Stub(
  1671.     IRpcStubBuffer *This,
  1672.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1673.     PRPC_MESSAGE _pRpcMessage,
  1674.     DWORD *_pdwStubPhase);
  1675. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_Fields_Proxy( 
  1676.     IMessage * This,
  1677.     /* [retval][out] */ Fields **varFields);
  1678. void __RPC_STUB IMessage_get_Fields_Stub(
  1679.     IRpcStubBuffer *This,
  1680.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1681.     PRPC_MESSAGE _pRpcMessage,
  1682.     DWORD *_pdwStubPhase);
  1683. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IMessage_get_MDNRequested_Proxy( 
  1684.     IMessage * This,
  1685.     /* [retval][out] */ VARIANT_BOOL *pMDNRequested);
  1686. void __RPC_STUB IMessage_get_MDNRequested_Stub(
  1687.     IRpcStubBuffer *This,
  1688.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1689.     PRPC_MESSAGE _pRpcMessage,
  1690.     DWORD *_pdwStubPhase);
  1691. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IMessage_put_MDNRequested_Proxy( 
  1692.     IMessage * This,
  1693.     /* [in] */ VARIANT_BOOL varMDNRequested);
  1694. void __RPC_STUB IMessage_put_MDNRequested_Stub(
  1695.     IRpcStubBuffer *This,
  1696.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1697.     PRPC_MESSAGE _pRpcMessage,
  1698.     DWORD *_pdwStubPhase);
  1699. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_AddRelatedBodyPart_Proxy( 
  1700.     IMessage * This,
  1701.     /* [in] */ BSTR URL,
  1702.     /* [in] */ BSTR Reference,
  1703.     /* [in] */ CdoReferenceType ReferenceType,
  1704.     /* [optional][in] */ BSTR UserName,
  1705.     /* [optional][in] */ BSTR Password,
  1706.     /* [retval][out] */ IBodyPart **ppBody);
  1707. void __RPC_STUB IMessage_AddRelatedBodyPart_Stub(
  1708.     IRpcStubBuffer *This,
  1709.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1710.     PRPC_MESSAGE _pRpcMessage,
  1711.     DWORD *_pdwStubPhase);
  1712. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_AddAttachment_Proxy( 
  1713.     IMessage * This,
  1714.     /* [in] */ BSTR URL,
  1715.     /* [optional][in] */ BSTR UserName,
  1716.     /* [optional][in] */ BSTR Password,
  1717.     /* [retval][out] */ IBodyPart **ppBody);
  1718. void __RPC_STUB IMessage_AddAttachment_Stub(
  1719.     IRpcStubBuffer *This,
  1720.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1721.     PRPC_MESSAGE _pRpcMessage,
  1722.     DWORD *_pdwStubPhase);
  1723. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_CreateMHTMLBody_Proxy( 
  1724.     IMessage * This,
  1725.     /* [in] */ BSTR URL,
  1726.     /* [defaultvalue][in] */ CdoMHTMLFlags Flags,
  1727.     /* [optional][in] */ BSTR UserName,
  1728.     /* [optional][in] */ BSTR Password);
  1729. void __RPC_STUB IMessage_CreateMHTMLBody_Stub(
  1730.     IRpcStubBuffer *This,
  1731.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1732.     PRPC_MESSAGE _pRpcMessage,
  1733.     DWORD *_pdwStubPhase);
  1734. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_Forward_Proxy( 
  1735.     IMessage * This,
  1736.     /* [retval][out] */ IMessage **ppMsg);
  1737. void __RPC_STUB IMessage_Forward_Stub(
  1738.     IRpcStubBuffer *This,
  1739.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1740.     PRPC_MESSAGE _pRpcMessage,
  1741.     DWORD *_pdwStubPhase);
  1742. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_Post_Proxy( 
  1743.     IMessage * This);
  1744. void __RPC_STUB IMessage_Post_Stub(
  1745.     IRpcStubBuffer *This,
  1746.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1747.     PRPC_MESSAGE _pRpcMessage,
  1748.     DWORD *_pdwStubPhase);
  1749. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_PostReply_Proxy( 
  1750.     IMessage * This,
  1751.     /* [retval][out] */ IMessage **ppMsg);
  1752. void __RPC_STUB IMessage_PostReply_Stub(
  1753.     IRpcStubBuffer *This,
  1754.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1755.     PRPC_MESSAGE _pRpcMessage,
  1756.     DWORD *_pdwStubPhase);
  1757. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_Reply_Proxy( 
  1758.     IMessage * This,
  1759.     /* [retval][out] */ IMessage **ppMsg);
  1760. void __RPC_STUB IMessage_Reply_Stub(
  1761.     IRpcStubBuffer *This,
  1762.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1763.     PRPC_MESSAGE _pRpcMessage,
  1764.     DWORD *_pdwStubPhase);
  1765. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_ReplyAll_Proxy( 
  1766.     IMessage * This,
  1767.     /* [retval][out] */ IMessage **ppMsg);
  1768. void __RPC_STUB IMessage_ReplyAll_Stub(
  1769.     IRpcStubBuffer *This,
  1770.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1771.     PRPC_MESSAGE _pRpcMessage,
  1772.     DWORD *_pdwStubPhase);
  1773. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_Send_Proxy( 
  1774.     IMessage * This);
  1775. void __RPC_STUB IMessage_Send_Stub(
  1776.     IRpcStubBuffer *This,
  1777.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1778.     PRPC_MESSAGE _pRpcMessage,
  1779.     DWORD *_pdwStubPhase);
  1780. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_GetStream_Proxy( 
  1781.     IMessage * This,
  1782.     /* [retval][out] */ _Stream **ppStream);
  1783. void __RPC_STUB IMessage_GetStream_Stub(
  1784.     IRpcStubBuffer *This,
  1785.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1786.     PRPC_MESSAGE _pRpcMessage,
  1787.     DWORD *_pdwStubPhase);
  1788. /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE IMessage_GetInterface_Proxy( 
  1789.     IMessage * This,
  1790.     /* [in] */ BSTR Interface,
  1791.     /* [retval][out] */ IDispatch **ppUnknown);
  1792. void __RPC_STUB IMessage_GetInterface_Stub(
  1793.     IRpcStubBuffer *This,
  1794.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1795.     PRPC_MESSAGE _pRpcMessage,
  1796.     DWORD *_pdwStubPhase);
  1797. #endif  /* __IMessage_INTERFACE_DEFINED__ */
  1798. #ifndef __IBodyPart_INTERFACE_DEFINED__
  1799. #define __IBodyPart_INTERFACE_DEFINED__
  1800. /* interface IBodyPart */
  1801. /* [unique][helpcontext][helpstring][nonextensible][dual][uuid][object] */ 
  1802. EXTERN_C const IID IID_IBodyPart;
  1803. #if defined(__cplusplus) && !defined(CINTERFACE)
  1804.     
  1805.     MIDL_INTERFACE("CD000021-8B95-11D1-82DB-00C04FB1625D")
  1806.     IBodyPart : public IDispatch
  1807.     {
  1808.     public:
  1809.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_BodyParts( 
  1810.             /* [retval][out] */ IBodyParts **varBodyParts) = 0;
  1811.         
  1812.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_ContentTransferEncoding( 
  1813.             /* [retval][out] */ BSTR *pContentTransferEncoding) = 0;
  1814.         
  1815.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_ContentTransferEncoding( 
  1816.             /* [in] */ BSTR varContentTransferEncoding) = 0;
  1817.         
  1818.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_ContentMediaType( 
  1819.             /* [retval][out] */ BSTR *pContentMediaType) = 0;
  1820.         
  1821.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_ContentMediaType( 
  1822.             /* [in] */ BSTR varContentMediaType) = 0;
  1823.         
  1824.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Fields( 
  1825.             /* [retval][out] */ Fields **varFields) = 0;
  1826.         
  1827.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Charset( 
  1828.             /* [retval][out] */ BSTR *pCharset) = 0;
  1829.         
  1830.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_Charset( 
  1831.             /* [in] */ BSTR varCharset) = 0;
  1832.         
  1833.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_FileName( 
  1834.             /* [retval][out] */ BSTR *varFileName) = 0;
  1835.         
  1836.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_DataSource( 
  1837.             /* [retval][out] */ IDataSource **varDataSource) = 0;
  1838.         
  1839.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_ContentClass( 
  1840.             /* [retval][out] */ BSTR *pContentClass) = 0;
  1841.         
  1842.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_ContentClass( 
  1843.             /* [in] */ BSTR varContentClass) = 0;
  1844.         
  1845.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_ContentClassName( 
  1846.             /* [retval][out] */ BSTR *pContentClassName) = 0;
  1847.         
  1848.         virtual /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE put_ContentClassName( 
  1849.             /* [in] */ BSTR varContentClassName) = 0;
  1850.         
  1851.         virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_Parent( 
  1852.             /* [retval][out] */ IBodyPart **varParent) = 0;
  1853.         
  1854.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE AddBodyPart( 
  1855.             /* [defaultvalue][in] */ long Index,
  1856.             /* [retval][out] */ IBodyPart **ppPart) = 0;
  1857.         
  1858.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveToFile( 
  1859.             /* [in] */ BSTR FileName) = 0;
  1860.         
  1861.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetEncodedContentStream( 
  1862.             /* [retval][out] */ _Stream **ppStream) = 0;
  1863.         
  1864.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDecodedContentStream( 
  1865.             /* [retval][out] */ _Stream **ppStream) = 0;
  1866.         
  1867.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetStream( 
  1868.             /* [retval][out] */ _Stream **ppStream) = 0;
  1869.         
  1870.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFieldParameter( 
  1871.             /* [in] */ BSTR FieldName,
  1872.             /* [in] */ BSTR Parameter,
  1873.             /* [retval][out] */ BSTR *pbstrValue) = 0;
  1874.         
  1875.         virtual /* [helpcontext][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetInterface( 
  1876.             /* [in] */ BSTR Interface,
  1877.             /* [retval][out] */ IDispatch **ppUnknown) = 0;
  1878.         
  1879.     };
  1880.     
  1881. #else  /* C style interface */
  1882.     typedef struct IBodyPartVtbl
  1883.     {
  1884.         BEGIN_INTERFACE
  1885.         
  1886.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1887.             IBodyPart * This,
  1888.             /* [in] */ REFIID riid,
  1889.             /* [iid_is][out] */ void **ppvObject);
  1890.         
  1891.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1892.             IBodyPart * This);
  1893.         
  1894.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1895.             IBodyPart * This);
  1896.         
  1897.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1898.             IBodyPart * This,
  1899.             /* [out] */ UINT *pctinfo);
  1900.         
  1901.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1902.             IBodyPart * This,
  1903.             /* [in] */ UINT iTInfo,
  1904.             /* [in] */ LCID lcid,
  1905.             /* [out] */ ITypeInfo **ppTInfo);
  1906.         
  1907.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1908.             IBodyPart * This,
  1909.             /* [in] */ REFIID riid,
  1910.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1911.             /* [in] */ UINT cNames,
  1912.             /* [in] */ LCID lcid,
  1913.             /* [size_is][out] */ DISPID *rgDispId);
  1914.         
  1915.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1916.             IBodyPart * This,
  1917.             /* [in] */ DISPID dispIdMember,
  1918.             /* [in] */ REFIID riid,
  1919.             /* [in] */ LCID lcid,
  1920.             /* [in] */ WORD wFlags,
  1921.             /* [out][in] */ DISPPARAMS *pDispParams,
  1922.             /* [out] */ VARIANT *pVarResult,
  1923.             /* [out] */ EXCEPINFO *pExcepInfo,
  1924.             /* [out] */ UINT *puArgErr);
  1925.         
  1926.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BodyParts )( 
  1927.             IBodyPart * This,
  1928.             /* [retval][out] */ IBodyParts **varBodyParts);
  1929.         
  1930.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContentTransferEncoding )( 
  1931.             IBodyPart * This,
  1932.             /* [retval][out] */ BSTR *pContentTransferEncoding);
  1933.         
  1934.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContentTransferEncoding )( 
  1935.             IBodyPart * This,
  1936.             /* [in] */ BSTR varContentTransferEncoding);
  1937.         
  1938.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContentMediaType )( 
  1939.             IBodyPart * This,
  1940.             /* [retval][out] */ BSTR *pContentMediaType);
  1941.         
  1942.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContentMediaType )( 
  1943.             IBodyPart * This,
  1944.             /* [in] */ BSTR varContentMediaType);
  1945.         
  1946.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Fields )( 
  1947.             IBodyPart * This,
  1948.             /* [retval][out] */ Fields **varFields);
  1949.         
  1950.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Charset )( 
  1951.             IBodyPart * This,
  1952.             /* [retval][out] */ BSTR *pCharset);
  1953.         
  1954.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Charset )( 
  1955.             IBodyPart * This,
  1956.             /* [in] */ BSTR varCharset);
  1957.         
  1958.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FileName )( 
  1959.             IBodyPart * This,
  1960.             /* [retval][out] */ BSTR *varFileName);
  1961.         
  1962.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DataSource )( 
  1963.             IBodyPart * This,
  1964.             /* [retval][out] */ IDataSource **varDataSource);
  1965.         
  1966.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContentClass )( 
  1967.             IBodyPart * This,
  1968.             /* [retval][out] */ BSTR *pContentClass);
  1969.         
  1970.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContentClass )( 
  1971.             IBodyPart * This,
  1972.             /* [in] */ BSTR varContentClass);
  1973.         
  1974.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContentClassName )( 
  1975.             IBodyPart * This,
  1976.             /* [retval][out] */ BSTR *pContentClassName);
  1977.         
  1978.         /* [helpcontext][helpstring][propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContentClassName )( 
  1979.             IBodyPart * This,
  1980.             /* [in] */ BSTR varContentClassName);
  1981.         
  1982.         /* [helpcontext][helpstring][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Parent )( 
  1983.             IBodyPart * This,
  1984.             /* [retval][out] */ IBodyPart **varParent);
  1985.         
  1986.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddBodyPart )( 
  1987.             IBodyPart * This,
  1988.             /* [defaultvalue][in] */ long Index,
  1989.             /* [retval][out] */ IBodyPart **ppPart);
  1990.         
  1991.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveToFile )( 
  1992.             IBodyPart * This,
  1993.             /* [in] */ BSTR FileName);
  1994.         
  1995.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetEncodedContentStream )( 
  1996.             IBodyPart * This,
  1997.             /* [retval][out] */ _Stream **ppStream);
  1998.         
  1999.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDecodedContentStream )( 
  2000.             IBodyPart * This,
  2001.             /* [retval][out] */ _Stream **ppStream);
  2002.         
  2003.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetStream )( 
  2004.             IBodyPart * This,
  2005.             /* [retval][out] */ _Stream **ppStream);
  2006.         
  2007.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetFieldParameter )( 
  2008.             IBodyPart * This,
  2009.             /* [in] */ BSTR FieldName,
  2010.             /* [in] */ BSTR Parameter,
  2011.             /* [retval][out] */ BSTR *pbstrValue);
  2012.         
  2013.         /* [helpcontext][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetInterface )( 
  2014.             IBodyPart * This,
  2015.             /* [in] */ BSTR Interface,
  2016.             /* [retval][out] */ IDispatch **ppUnknown);
  2017.         
  2018.         END_INTERFACE
  2019.     } IBodyPartVtbl;
  2020.     interface IBodyPart
  2021.     {
  2022.         CONST_VTBL struct IBodyPartVtbl *lpVtbl;
  2023.     };
  2024.     
  2025. #ifdef COBJMACROS
  2026. #define IBodyPart_QueryInterface(This,riid,ppvObject)
  2027.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2028. #define IBodyPart_AddRef(This)
  2029.     (This)->lpVtbl -> AddRef(This)
  2030. #define IBodyPart_Release(This)
  2031.     (This)->lpVtbl -> Release(This)
  2032. #define IBodyPart_GetTypeInfoCount(This,pctinfo)
  2033.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2034. #define IBodyPart_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2035.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2036. #define IBodyPart_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2037.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2038. #define IBodyPart_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2039.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2040. #define IBodyPart_get_BodyParts(This,varBodyParts)
  2041.     (This)->lpVtbl -> get_BodyParts(This,varBodyParts)
  2042. #define IBodyPart_get_ContentTransferEncoding(This,pContentTransferEncoding)
  2043.     (This)->lpVtbl -> get_ContentTransferEncoding(This,pContentTransferEncoding)
  2044. #define IBodyPart_put_ContentTransferEncoding(This,varContentTransferEncoding)
  2045.     (This)->lpVtbl -> put_ContentTransferEncoding(This,varContentTransferEncoding)
  2046. #define IBodyPart_get_ContentMediaType(This,pContentMediaType)
  2047.     (This)->lpVtbl -> get_ContentMediaType(This,pContentMediaType)
  2048. #define IBodyPart_put_ContentMediaType(This,varContentMediaType)
  2049.     (This)->lpVtbl -> put_ContentMediaType(This,varContentMediaType)
  2050. #define IBodyPart_get_Fields(This,varFields)
  2051.     (This)->lpVtbl -> get_Fields(This,varFields)
  2052. #define IBodyPart_get_Charset(This,pCharset)
  2053.     (This)->lpVtbl -> get_Charset(This,pCharset)
  2054. #define IBodyPart_put_Charset(This,varCharset)
  2055.     (This)->lpVtbl -> put_Charset(This,varCharset)
  2056. #define IBodyPart_get_FileName(This,varFileName)
  2057.     (This)->lpVtbl -> get_FileName(This,varFileName)
  2058. #define IBodyPart_get_DataSource(This,varDataSource)
  2059.     (This)->lpVtbl -> get_DataSource(This,varDataSource)
  2060. #define IBodyPart_get_ContentClass(This,pContentClass)
  2061.     (This)->lpVtbl -> get_ContentClass(This,pContentClass)
  2062. #define IBodyPart_put_ContentClass(This,varContentClass)
  2063.     (This)->lpVtbl -> put_ContentClass(This,varContentClass)
  2064. #define IBodyPart_get_ContentClassName(This,pContentClassName)
  2065.     (This)->lpVtbl -> get_ContentClassName(This,pContentClassName)
  2066. #define IBodyPart_put_ContentClassName(This,varContentClassName)
  2067.     (This)->lpVtbl -> put_ContentClassName(This,varContentClassName)
  2068. #define IBodyPart_get_Parent(This,varParent)
  2069.     (This)->lpVtbl -> get_Parent(This,varParent)
  2070. #define IBodyPart_AddBodyPart(This,Index,ppPart)
  2071.     (This)->lpVtbl -> AddBodyPart(This,Index,ppPart)
  2072. #define IBodyPart_SaveToFile(This,FileName)
  2073.     (This)->lpVtbl -> SaveToFile(This,FileName)
  2074. #define IBodyPart_GetEncodedContentStream(This,ppStream)
  2075.     (This)->lpVtbl -> GetEncodedContentStream(This,ppStream)
  2076. #define IBodyPart_GetDecodedContentStream(This,ppStream)
  2077.     (This)->lpVtbl -> GetDecodedContentStream(This,ppStream)
  2078. #define IBodyPart_GetStream(This,ppStream)
  2079.     (This)->lpVtbl -> GetStream(This,ppStream)
  2080. #define IBodyPart_GetFieldParameter(This,FieldName,Parameter,pbstrValue)
  2081.     (This)->lpVtbl -> GetFieldParameter(This,FieldName,Parameter,pbstrValue)
  2082. #define IBodyPart_GetInterface(This,Interface,ppUnknown)
  2083.     (This)->lpVtbl -> GetInterface(This,Interface,ppUnknown)
  2084. #endif /* COBJMACROS */
  2085. #endif  /* C style interface */
  2086. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IBodyPart_get_BodyParts_Proxy( 
  2087.     IBodyPart * This,
  2088.     /* [retval][out] */ IBodyParts **varBodyParts);
  2089. void __RPC_STUB IBodyPart_get_BodyParts_Stub(
  2090.     IRpcStubBuffer *This,
  2091.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2092.     PRPC_MESSAGE _pRpcMessage,
  2093.     DWORD *_pdwStubPhase);
  2094. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IBodyPart_get_ContentTransferEncoding_Proxy( 
  2095.     IBodyPart * This,
  2096.     /* [retval][out] */ BSTR *pContentTransferEncoding);
  2097. void __RPC_STUB IBodyPart_get_ContentTransferEncoding_Stub(
  2098.     IRpcStubBuffer *This,
  2099.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2100.     PRPC_MESSAGE _pRpcMessage,
  2101.     DWORD *_pdwStubPhase);
  2102. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IBodyPart_put_ContentTransferEncoding_Proxy( 
  2103.     IBodyPart * This,
  2104.     /* [in] */ BSTR varContentTransferEncoding);
  2105. void __RPC_STUB IBodyPart_put_ContentTransferEncoding_Stub(
  2106.     IRpcStubBuffer *This,
  2107.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2108.     PRPC_MESSAGE _pRpcMessage,
  2109.     DWORD *_pdwStubPhase);
  2110. /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE IBodyPart_get_ContentMediaType_Proxy( 
  2111.     IBodyPart * This,
  2112.     /* [retval][out] */ BSTR *pContentMediaType);
  2113. void __RPC_STUB IBodyPart_get_ContentMediaType_Stub(
  2114.     IRpcStubBuffer *This,
  2115.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2116.     PRPC_MESSAGE _pRpcMessage,
  2117.     DWORD *_pdwStubPhase);
  2118. /* [helpcontext][helpstring][propput][id] */ HRESULT STDMETHODCALLTYPE IBodyPart_put_ContentMediaType_Proxy( 
  2119.     IBodyPart * This,
  2120.     /* [in] */ BSTR varContentMediaType);
  2121. void __RPC_STUB IBodyPart_put_ContentMediaType_Stub(
  2122.     IRpcStubBuffer *This,
  2123.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2124.     PRPC_MESSAGE _pRpcMessage,
  2125.     DWORD *_pdwStubPhase);