Click here to Skip to main content
15,893,904 members
Articles / Desktop Programming / ATL

En/Decode MIME-Content with MimeSniffer

Rate me:
Please Sign up or sign in to vote.
4.88/5 (26 votes)
2 Dec 20022 min read 376.4K   7K   74  
RFC-compliant Mime-En/Decoder
/* this ALWAYS GENERATED file contains the definitions for the interfaces */


/* File created by MIDL compiler version 5.01.0164 */
/* at Wed Feb 05 12:58:04 2003
 */
/* Compiler settings for F:\Release\MimeSniffer\The Code Project\Kopie von MimeSniffer\MimeSniffer.idl:
    Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
    error checks: allocation ref bounds_check enum stub_data 
*/
//@@MIDL_FILE_HEADING(  )


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 440
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __MimeSniffer_h__
#define __MimeSniffer_h__

#ifdef __cplusplus
extern "C"{
#endif 

/* Forward Declarations */ 

#ifndef __IMimeDecoder_FWD_DEFINED__
#define __IMimeDecoder_FWD_DEFINED__
typedef interface IMimeDecoder IMimeDecoder;
#endif 	/* __IMimeDecoder_FWD_DEFINED__ */


#ifndef ___IMimeDecoderEvents_FWD_DEFINED__
#define ___IMimeDecoderEvents_FWD_DEFINED__
typedef interface _IMimeDecoderEvents _IMimeDecoderEvents;
#endif 	/* ___IMimeDecoderEvents_FWD_DEFINED__ */


#ifndef __IMailAddress_FWD_DEFINED__
#define __IMailAddress_FWD_DEFINED__
typedef interface IMailAddress IMailAddress;
#endif 	/* __IMailAddress_FWD_DEFINED__ */


#ifndef __ICollection_FWD_DEFINED__
#define __ICollection_FWD_DEFINED__
typedef interface ICollection ICollection;
#endif 	/* __ICollection_FWD_DEFINED__ */


#ifndef __IClientSocket_FWD_DEFINED__
#define __IClientSocket_FWD_DEFINED__
typedef interface IClientSocket IClientSocket;
#endif 	/* __IClientSocket_FWD_DEFINED__ */


#ifndef __IMimeBody_FWD_DEFINED__
#define __IMimeBody_FWD_DEFINED__
typedef interface IMimeBody IMimeBody;
#endif 	/* __IMimeBody_FWD_DEFINED__ */


#ifndef __MimeDecoder_FWD_DEFINED__
#define __MimeDecoder_FWD_DEFINED__

#ifdef __cplusplus
typedef class MimeDecoder MimeDecoder;
#else
typedef struct MimeDecoder MimeDecoder;
#endif /* __cplusplus */

#endif 	/* __MimeDecoder_FWD_DEFINED__ */


#ifndef __MailAddress_FWD_DEFINED__
#define __MailAddress_FWD_DEFINED__

#ifdef __cplusplus
typedef class MailAddress MailAddress;
#else
typedef struct MailAddress MailAddress;
#endif /* __cplusplus */

#endif 	/* __MailAddress_FWD_DEFINED__ */


#ifndef __Collection_FWD_DEFINED__
#define __Collection_FWD_DEFINED__

#ifdef __cplusplus
typedef class Collection Collection;
#else
typedef struct Collection Collection;
#endif /* __cplusplus */

#endif 	/* __Collection_FWD_DEFINED__ */


#ifndef __ClientSocket_FWD_DEFINED__
#define __ClientSocket_FWD_DEFINED__

#ifdef __cplusplus
typedef class ClientSocket ClientSocket;
#else
typedef struct ClientSocket ClientSocket;
#endif /* __cplusplus */

#endif 	/* __ClientSocket_FWD_DEFINED__ */


#ifndef __MimeBody_FWD_DEFINED__
#define __MimeBody_FWD_DEFINED__

#ifdef __cplusplus
typedef class MimeBody MimeBody;
#else
typedef struct MimeBody MimeBody;
#endif /* __cplusplus */

#endif 	/* __MimeBody_FWD_DEFINED__ */


/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"

void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 


#ifndef __MIMESNIFFERLib_LIBRARY_DEFINED__
#define __MIMESNIFFERLib_LIBRARY_DEFINED__

/* library MIMESNIFFERLib */
/* [helpstring][version][uuid] */ 

typedef 
enum MajorMimeTypes
    {	Multipart	= 0,
	Text	= Multipart + 1,
	Image	= Text + 1,
	Application	= Image + 1,
	Audio	= Application + 1,
	Video	= Audio + 1,
	Message	= Video + 1
    }	MajorMimeTypes;

typedef 
enum MultipartTypes
    {	Mixed	= 0,
	Parallel	= Mixed + 1,
	Digest	= Parallel + 1,
	Alternative	= Digest + 1
    }	MultipartTypes;

typedef 
enum TextTypes
    {	Plain	= 0,
	Html	= Plain + 1
    }	TextTypes;

typedef 
enum ImageTypes
    {	Gif	= 0,
	Jpg	= Gif + 1
    }	ImageTypes;

typedef 
enum ApplicationTypes
    {	OctetStream	= 0,
	Postscript	= OctetStream + 1
    }	ApplicationTypes;

typedef 
enum AudioTypes
    {	Basic	= 0
    }	AudioTypes;

typedef 
enum VideoTypes
    {	Mpeg	= 0
    }	VideoTypes;

typedef 
enum MessageTypes
    {	Rfc822	= 0,
	Partial	= Rfc822 + 1,
	ExternalBody	= Partial + 1
    }	MessageTypes;

typedef 
enum EncoderTypes
    {	SevenBit	= 0,
	QuotedPrintable	= SevenBit + 1,
	Base64	= QuotedPrintable + 1,
	EightBit	= Base64 + 1,
	Binary	= EightBit + 1
    }	EncoderTypes;


EXTERN_C const IID LIBID_MIMESNIFFERLib;

#ifndef __IMimeDecoder_INTERFACE_DEFINED__
#define __IMimeDecoder_INTERFACE_DEFINED__

/* interface IMimeDecoder */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IMimeDecoder;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D83F672E-B48F-4F92-9DBE-523C5079EC2D")
    IMimeDecoder : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadFromFile( 
            /* [in] */ BSTR Path,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveToFile( 
            /* [in] */ BSTR Path,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReturnPath( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReturnPath( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MajorMimeVersion( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MajorMimeVersion( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinorMimeVersion( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MinorMimeVersion( 
            /* [in] */ long newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReplyTo( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReplyTo( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_From( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_From( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Sender( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Sender( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResentReplyTo( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResentReplyTo( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResentFrom( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResentFrom( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResentSender( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResentSender( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Date( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Date( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ResentDate( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ResentDate( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_To( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_To( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CC( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_CC( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_BCC( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_BCC( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Subject( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Subject( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MessageID( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MessageID( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReceivedFieldAsRaw( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReceivedFieldAsRaw( 
            /* [in] */ VARIANT_BOOL newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ReturnReceiptTo( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ReturnReceiptTo( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Load( 
            /* [in] */ LPDISPATCH StreamObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarRestult) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Save( 
            /* [in] */ LPDISPATCH StreamObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarRestult) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_SubjectRaw( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_SubjectRaw( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Body( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Body( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_CanUpdateName( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_UpdateName( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InterpretEmbeddedMails( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InterpretEmbeddedMails( 
            /* [in] */ VARIANT_BOOL newVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMimeDecoderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMimeDecoder __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMimeDecoder __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMimeDecoder __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *LoadFromFile )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ BSTR Path,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveToFile )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ BSTR Path,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReturnPath )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReturnPath )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MajorMimeVersion )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MajorMimeVersion )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MinorMimeVersion )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MinorMimeVersion )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ long newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReplyTo )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReplyTo )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_From )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_From )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Sender )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Sender )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResentReplyTo )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResentReplyTo )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResentFrom )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResentFrom )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResentSender )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResentSender )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Date )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Date )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ResentDate )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ResentDate )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_To )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_To )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CC )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_CC )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_BCC )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_BCC )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Subject )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Subject )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MessageID )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MessageID )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReceivedFieldAsRaw )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReceivedFieldAsRaw )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ReturnReceiptTo )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ReturnReceiptTo )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Load )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ LPDISPATCH StreamObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarRestult);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Save )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ LPDISPATCH StreamObject,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarRestult);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_SubjectRaw )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_SubjectRaw )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Body )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Body )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_CanUpdateName )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_UpdateName )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_InterpretEmbeddedMails )( 
            IMimeDecoder __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_InterpretEmbeddedMails )( 
            IMimeDecoder __RPC_FAR * This,
            /* [in] */ VARIANT_BOOL newVal);
        
        END_INTERFACE
    } IMimeDecoderVtbl;

    interface IMimeDecoder
    {
        CONST_VTBL struct IMimeDecoderVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMimeDecoder_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMimeDecoder_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMimeDecoder_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMimeDecoder_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMimeDecoder_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMimeDecoder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMimeDecoder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMimeDecoder_LoadFromFile(This,Path,pbvarResult)	\
    (This)->lpVtbl -> LoadFromFile(This,Path,pbvarResult)

#define IMimeDecoder_SaveToFile(This,Path,pbvarResult)	\
    (This)->lpVtbl -> SaveToFile(This,Path,pbvarResult)

#define IMimeDecoder_get_ReturnPath(This,pVal)	\
    (This)->lpVtbl -> get_ReturnPath(This,pVal)

#define IMimeDecoder_put_ReturnPath(This,newVal)	\
    (This)->lpVtbl -> put_ReturnPath(This,newVal)

#define IMimeDecoder_get_MajorMimeVersion(This,pVal)	\
    (This)->lpVtbl -> get_MajorMimeVersion(This,pVal)

#define IMimeDecoder_put_MajorMimeVersion(This,newVal)	\
    (This)->lpVtbl -> put_MajorMimeVersion(This,newVal)

#define IMimeDecoder_get_MinorMimeVersion(This,pVal)	\
    (This)->lpVtbl -> get_MinorMimeVersion(This,pVal)

#define IMimeDecoder_put_MinorMimeVersion(This,newVal)	\
    (This)->lpVtbl -> put_MinorMimeVersion(This,newVal)

#define IMimeDecoder_get_ReplyTo(This,pVal)	\
    (This)->lpVtbl -> get_ReplyTo(This,pVal)

#define IMimeDecoder_put_ReplyTo(This,newVal)	\
    (This)->lpVtbl -> put_ReplyTo(This,newVal)

#define IMimeDecoder_get_From(This,pVal)	\
    (This)->lpVtbl -> get_From(This,pVal)

#define IMimeDecoder_put_From(This,newVal)	\
    (This)->lpVtbl -> put_From(This,newVal)

#define IMimeDecoder_get_Sender(This,pVal)	\
    (This)->lpVtbl -> get_Sender(This,pVal)

#define IMimeDecoder_put_Sender(This,newVal)	\
    (This)->lpVtbl -> put_Sender(This,newVal)

#define IMimeDecoder_get_ResentReplyTo(This,pVal)	\
    (This)->lpVtbl -> get_ResentReplyTo(This,pVal)

#define IMimeDecoder_put_ResentReplyTo(This,newVal)	\
    (This)->lpVtbl -> put_ResentReplyTo(This,newVal)

#define IMimeDecoder_get_ResentFrom(This,pVal)	\
    (This)->lpVtbl -> get_ResentFrom(This,pVal)

#define IMimeDecoder_put_ResentFrom(This,newVal)	\
    (This)->lpVtbl -> put_ResentFrom(This,newVal)

#define IMimeDecoder_get_ResentSender(This,pVal)	\
    (This)->lpVtbl -> get_ResentSender(This,pVal)

#define IMimeDecoder_put_ResentSender(This,newVal)	\
    (This)->lpVtbl -> put_ResentSender(This,newVal)

#define IMimeDecoder_get_Date(This,pVal)	\
    (This)->lpVtbl -> get_Date(This,pVal)

#define IMimeDecoder_put_Date(This,newVal)	\
    (This)->lpVtbl -> put_Date(This,newVal)

#define IMimeDecoder_get_ResentDate(This,pVal)	\
    (This)->lpVtbl -> get_ResentDate(This,pVal)

#define IMimeDecoder_put_ResentDate(This,newVal)	\
    (This)->lpVtbl -> put_ResentDate(This,newVal)

#define IMimeDecoder_get_To(This,pVal)	\
    (This)->lpVtbl -> get_To(This,pVal)

#define IMimeDecoder_put_To(This,newVal)	\
    (This)->lpVtbl -> put_To(This,newVal)

#define IMimeDecoder_get_CC(This,pVal)	\
    (This)->lpVtbl -> get_CC(This,pVal)

#define IMimeDecoder_put_CC(This,newVal)	\
    (This)->lpVtbl -> put_CC(This,newVal)

#define IMimeDecoder_get_BCC(This,pVal)	\
    (This)->lpVtbl -> get_BCC(This,pVal)

#define IMimeDecoder_put_BCC(This,newVal)	\
    (This)->lpVtbl -> put_BCC(This,newVal)

#define IMimeDecoder_get_Subject(This,pVal)	\
    (This)->lpVtbl -> get_Subject(This,pVal)

#define IMimeDecoder_put_Subject(This,newVal)	\
    (This)->lpVtbl -> put_Subject(This,newVal)

#define IMimeDecoder_get_MessageID(This,pVal)	\
    (This)->lpVtbl -> get_MessageID(This,pVal)

#define IMimeDecoder_put_MessageID(This,newVal)	\
    (This)->lpVtbl -> put_MessageID(This,newVal)

#define IMimeDecoder_get_ReceivedFieldAsRaw(This,pVal)	\
    (This)->lpVtbl -> get_ReceivedFieldAsRaw(This,pVal)

#define IMimeDecoder_put_ReceivedFieldAsRaw(This,newVal)	\
    (This)->lpVtbl -> put_ReceivedFieldAsRaw(This,newVal)

#define IMimeDecoder_get_ReturnReceiptTo(This,pVal)	\
    (This)->lpVtbl -> get_ReturnReceiptTo(This,pVal)

#define IMimeDecoder_put_ReturnReceiptTo(This,newVal)	\
    (This)->lpVtbl -> put_ReturnReceiptTo(This,newVal)

#define IMimeDecoder_Load(This,StreamObject,pbvarRestult)	\
    (This)->lpVtbl -> Load(This,StreamObject,pbvarRestult)

#define IMimeDecoder_Save(This,StreamObject,pbvarRestult)	\
    (This)->lpVtbl -> Save(This,StreamObject,pbvarRestult)

#define IMimeDecoder_get_SubjectRaw(This,pVal)	\
    (This)->lpVtbl -> get_SubjectRaw(This,pVal)

#define IMimeDecoder_put_SubjectRaw(This,newVal)	\
    (This)->lpVtbl -> put_SubjectRaw(This,newVal)

#define IMimeDecoder_get_Body(This,pVal)	\
    (This)->lpVtbl -> get_Body(This,pVal)

#define IMimeDecoder_put_Body(This,newVal)	\
    (This)->lpVtbl -> put_Body(This,newVal)

#define IMimeDecoder_get_CanUpdateName(This,pVal)	\
    (This)->lpVtbl -> get_CanUpdateName(This,pVal)

#define IMimeDecoder_put_UpdateName(This,newVal)	\
    (This)->lpVtbl -> put_UpdateName(This,newVal)

#define IMimeDecoder_get_InterpretEmbeddedMails(This,pVal)	\
    (This)->lpVtbl -> get_InterpretEmbeddedMails(This,pVal)

#define IMimeDecoder_put_InterpretEmbeddedMails(This,newVal)	\
    (This)->lpVtbl -> put_InterpretEmbeddedMails(This,newVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_LoadFromFile_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ BSTR Path,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);


void __RPC_STUB IMimeDecoder_LoadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_SaveToFile_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ BSTR Path,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);


void __RPC_STUB IMimeDecoder_SaveToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_ReturnPath_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_ReturnPath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_ReturnPath_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_ReturnPath_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_MajorMimeVersion_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_MajorMimeVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_MajorMimeVersion_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ long newVal);


void __RPC_STUB IMimeDecoder_put_MajorMimeVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_MinorMimeVersion_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_MinorMimeVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_MinorMimeVersion_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ long newVal);


void __RPC_STUB IMimeDecoder_put_MinorMimeVersion_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_ReplyTo_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_ReplyTo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_ReplyTo_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_ReplyTo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_From_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_From_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_From_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_From_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_Sender_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_Sender_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_Sender_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_Sender_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_ResentReplyTo_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_ResentReplyTo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_ResentReplyTo_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_ResentReplyTo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_ResentFrom_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_ResentFrom_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_ResentFrom_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_ResentFrom_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_ResentSender_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_ResentSender_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_ResentSender_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_ResentSender_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_Date_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_Date_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_Date_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_Date_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_ResentDate_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_ResentDate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_ResentDate_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_ResentDate_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_To_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_To_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_To_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_To_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_CC_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_CC_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_CC_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_CC_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_BCC_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_BCC_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_BCC_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_BCC_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_Subject_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_Subject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_Subject_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_Subject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_MessageID_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_MessageID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_MessageID_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_MessageID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_ReceivedFieldAsRaw_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_ReceivedFieldAsRaw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_ReceivedFieldAsRaw_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL newVal);


void __RPC_STUB IMimeDecoder_put_ReceivedFieldAsRaw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_ReturnReceiptTo_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_ReturnReceiptTo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_ReturnReceiptTo_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_ReturnReceiptTo_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_Load_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ LPDISPATCH StreamObject,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarRestult);


void __RPC_STUB IMimeDecoder_Load_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_Save_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ LPDISPATCH StreamObject,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarRestult);


void __RPC_STUB IMimeDecoder_Save_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_SubjectRaw_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_SubjectRaw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_SubjectRaw_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_SubjectRaw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_Body_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_Body_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_Body_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeDecoder_put_Body_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_CanUpdateName_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_CanUpdateName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_UpdateName_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ BSTR newVal);


void __RPC_STUB IMimeDecoder_put_UpdateName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_get_InterpretEmbeddedMails_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pVal);


void __RPC_STUB IMimeDecoder_get_InterpretEmbeddedMails_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeDecoder_put_InterpretEmbeddedMails_Proxy( 
    IMimeDecoder __RPC_FAR * This,
    /* [in] */ VARIANT_BOOL newVal);


void __RPC_STUB IMimeDecoder_put_InterpretEmbeddedMails_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMimeDecoder_INTERFACE_DEFINED__ */


#ifndef ___IMimeDecoderEvents_DISPINTERFACE_DEFINED__
#define ___IMimeDecoderEvents_DISPINTERFACE_DEFINED__

/* dispinterface _IMimeDecoderEvents */
/* [helpstring][uuid] */ 


EXTERN_C const IID DIID__IMimeDecoderEvents;

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("9DA0E669-0034-4770-9D3F-C3ECC9A0124F")
    _IMimeDecoderEvents : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct _IMimeDecoderEventsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            _IMimeDecoderEvents __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            _IMimeDecoderEvents __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            _IMimeDecoderEvents __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            _IMimeDecoderEvents __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            _IMimeDecoderEvents __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            _IMimeDecoderEvents __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            _IMimeDecoderEvents __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        END_INTERFACE
    } _IMimeDecoderEventsVtbl;

    interface _IMimeDecoderEvents
    {
        CONST_VTBL struct _IMimeDecoderEventsVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define _IMimeDecoderEvents_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define _IMimeDecoderEvents_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define _IMimeDecoderEvents_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define _IMimeDecoderEvents_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define _IMimeDecoderEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define _IMimeDecoderEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define _IMimeDecoderEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* ___IMimeDecoderEvents_DISPINTERFACE_DEFINED__ */


#ifndef __IMailAddress_INTERFACE_DEFINED__
#define __IMailAddress_INTERFACE_DEFINED__

/* interface IMailAddress */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IMailAddress;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("AF0FEF99-54D9-401F-8395-EECDF967AC99")
    IMailAddress : public IDispatch
    {
    public:
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Address( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Address( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_NameRaw( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_NameRaw( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Name( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RouteAddress( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMailAddressVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMailAddress __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMailAddress __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMailAddress __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMailAddress __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMailAddress __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMailAddress __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMailAddress __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Address )( 
            IMailAddress __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Address )( 
            IMailAddress __RPC_FAR * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_NameRaw )( 
            IMailAddress __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_NameRaw )( 
            IMailAddress __RPC_FAR * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
            IMailAddress __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Name )( 
            IMailAddress __RPC_FAR * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RouteAddress )( 
            IMailAddress __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        END_INTERFACE
    } IMailAddressVtbl;

    interface IMailAddress
    {
        CONST_VTBL struct IMailAddressVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMailAddress_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMailAddress_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMailAddress_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMailAddress_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMailAddress_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMailAddress_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMailAddress_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMailAddress_get_Address(This,pVal)	\
    (This)->lpVtbl -> get_Address(This,pVal)

#define IMailAddress_put_Address(This,newVal)	\
    (This)->lpVtbl -> put_Address(This,newVal)

#define IMailAddress_get_NameRaw(This,pVal)	\
    (This)->lpVtbl -> get_NameRaw(This,pVal)

#define IMailAddress_put_NameRaw(This,newVal)	\
    (This)->lpVtbl -> put_NameRaw(This,newVal)

#define IMailAddress_get_Name(This,pVal)	\
    (This)->lpVtbl -> get_Name(This,pVal)

#define IMailAddress_put_Name(This,newVal)	\
    (This)->lpVtbl -> put_Name(This,newVal)

#define IMailAddress_get_RouteAddress(This,pVal)	\
    (This)->lpVtbl -> get_RouteAddress(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMailAddress_get_Address_Proxy( 
    IMailAddress __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IMailAddress_get_Address_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMailAddress_put_Address_Proxy( 
    IMailAddress __RPC_FAR * This,
    /* [in] */ BSTR newVal);


void __RPC_STUB IMailAddress_put_Address_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMailAddress_get_NameRaw_Proxy( 
    IMailAddress __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IMailAddress_get_NameRaw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMailAddress_put_NameRaw_Proxy( 
    IMailAddress __RPC_FAR * This,
    /* [in] */ BSTR newVal);


void __RPC_STUB IMailAddress_put_NameRaw_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMailAddress_get_Name_Proxy( 
    IMailAddress __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IMailAddress_get_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMailAddress_put_Name_Proxy( 
    IMailAddress __RPC_FAR * This,
    /* [in] */ BSTR newVal);


void __RPC_STUB IMailAddress_put_Name_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMailAddress_get_RouteAddress_Proxy( 
    IMailAddress __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IMailAddress_get_RouteAddress_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMailAddress_INTERFACE_DEFINED__ */


#ifndef __ICollection_INTERFACE_DEFINED__
#define __ICollection_INTERFACE_DEFINED__

/* interface ICollection */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_ICollection;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2ED8A834-7283-4BC8-9C42-A389A917255D")
    ICollection : public IDispatch
    {
    public:
        virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnknown) = 0;
        
        virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ long Index,
            /* [retval][out] */ LPVARIANT pVariant) = 0;
        
        virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT Item) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE Remove( 
            /* [in] */ long Index) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE Modify( 
            /* [in] */ long Index,
            /* [in] */ VARIANT Item) = 0;
        
        virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemID( 
            /* [in] */ long Index,
            /* [out] */ VARIANT __RPC_FAR *pID,
            /* [retval][out] */ LPVARIANT pVariant) = 0;
        
        virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_ItemByID( 
            /* [in] */ long ID,
            /* [retval][out] */ LPVARIANT pVariant) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE RemoveByID( 
            /* [in] */ long ID) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE ModifyByID( 
            /* [in] */ long ID,
            /* [in] */ VARIANT Item) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ICollectionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            ICollection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            ICollection __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            ICollection __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            ICollection __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            ICollection __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            ICollection __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            ICollection __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
            ICollection __RPC_FAR * This,
            /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnknown);
        
        /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            ICollection __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ LPVARIANT pVariant);
        
        /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            ICollection __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
            ICollection __RPC_FAR * This,
            /* [in] */ VARIANT Item);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Remove )( 
            ICollection __RPC_FAR * This,
            /* [in] */ long Index);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            ICollection __RPC_FAR * This);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Modify )( 
            ICollection __RPC_FAR * This,
            /* [in] */ long Index,
            /* [in] */ VARIANT Item);
        
        /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemID )( 
            ICollection __RPC_FAR * This,
            /* [in] */ long Index,
            /* [out] */ VARIANT __RPC_FAR *pID,
            /* [retval][out] */ LPVARIANT pVariant);
        
        /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ItemByID )( 
            ICollection __RPC_FAR * This,
            /* [in] */ long ID,
            /* [retval][out] */ LPVARIANT pVariant);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveByID )( 
            ICollection __RPC_FAR * This,
            /* [in] */ long ID);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ModifyByID )( 
            ICollection __RPC_FAR * This,
            /* [in] */ long ID,
            /* [in] */ VARIANT Item);
        
        END_INTERFACE
    } ICollectionVtbl;

    interface ICollection
    {
        CONST_VTBL struct ICollectionVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define ICollection_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define ICollection_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define ICollection_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define ICollection_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define ICollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define ICollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define ICollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define ICollection_get__NewEnum(This,ppUnknown)	\
    (This)->lpVtbl -> get__NewEnum(This,ppUnknown)

#define ICollection_get_Item(This,Index,pVariant)	\
    (This)->lpVtbl -> get_Item(This,Index,pVariant)

#define ICollection_get_Count(This,pVal)	\
    (This)->lpVtbl -> get_Count(This,pVal)

#define ICollection_Add(This,Item)	\
    (This)->lpVtbl -> Add(This,Item)

#define ICollection_Remove(This,Index)	\
    (This)->lpVtbl -> Remove(This,Index)

#define ICollection_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define ICollection_Modify(This,Index,Item)	\
    (This)->lpVtbl -> Modify(This,Index,Item)

#define ICollection_get_ItemID(This,Index,pID,pVariant)	\
    (This)->lpVtbl -> get_ItemID(This,Index,pID,pVariant)

#define ICollection_get_ItemByID(This,ID,pVariant)	\
    (This)->lpVtbl -> get_ItemByID(This,ID,pVariant)

#define ICollection_RemoveByID(This,ID)	\
    (This)->lpVtbl -> RemoveByID(This,ID)

#define ICollection_ModifyByID(This,ID,Item)	\
    (This)->lpVtbl -> ModifyByID(This,ID,Item)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [id][propget] */ HRESULT STDMETHODCALLTYPE ICollection_get__NewEnum_Proxy( 
    ICollection __RPC_FAR * This,
    /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppUnknown);


void __RPC_STUB ICollection_get__NewEnum_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id][propget] */ HRESULT STDMETHODCALLTYPE ICollection_get_Item_Proxy( 
    ICollection __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ LPVARIANT pVariant);


void __RPC_STUB ICollection_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id][propget] */ HRESULT STDMETHODCALLTYPE ICollection_get_Count_Proxy( 
    ICollection __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB ICollection_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE ICollection_Add_Proxy( 
    ICollection __RPC_FAR * This,
    /* [in] */ VARIANT Item);


void __RPC_STUB ICollection_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE ICollection_Remove_Proxy( 
    ICollection __RPC_FAR * This,
    /* [in] */ long Index);


void __RPC_STUB ICollection_Remove_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE ICollection_Clear_Proxy( 
    ICollection __RPC_FAR * This);


void __RPC_STUB ICollection_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE ICollection_Modify_Proxy( 
    ICollection __RPC_FAR * This,
    /* [in] */ long Index,
    /* [in] */ VARIANT Item);


void __RPC_STUB ICollection_Modify_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id][propget] */ HRESULT STDMETHODCALLTYPE ICollection_get_ItemID_Proxy( 
    ICollection __RPC_FAR * This,
    /* [in] */ long Index,
    /* [out] */ VARIANT __RPC_FAR *pID,
    /* [retval][out] */ LPVARIANT pVariant);


void __RPC_STUB ICollection_get_ItemID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id][propget] */ HRESULT STDMETHODCALLTYPE ICollection_get_ItemByID_Proxy( 
    ICollection __RPC_FAR * This,
    /* [in] */ long ID,
    /* [retval][out] */ LPVARIANT pVariant);


void __RPC_STUB ICollection_get_ItemByID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE ICollection_RemoveByID_Proxy( 
    ICollection __RPC_FAR * This,
    /* [in] */ long ID);


void __RPC_STUB ICollection_RemoveByID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE ICollection_ModifyByID_Proxy( 
    ICollection __RPC_FAR * This,
    /* [in] */ long ID,
    /* [in] */ VARIANT Item);


void __RPC_STUB ICollection_ModifyByID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __ICollection_INTERFACE_DEFINED__ */


#ifndef __IClientSocket_INTERFACE_DEFINED__
#define __IClientSocket_INTERFACE_DEFINED__

/* interface IClientSocket */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IClientSocket;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("444D55C3-C0D6-47DC-AE6F-8C43EAF34E8E")
    IClientSocket : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ConnectSMTP( 
            /* [in] */ BSTR strServer,
            /* [defaultvalue][in] */ long nPort,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pRet) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DisconnectSMTP( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pRet) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE PrepareSMTP( 
            /* [in] */ LPDISPATCH pDecoder,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetResultSMTP( 
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IClientSocketVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IClientSocket __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IClientSocket __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IClientSocket __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IClientSocket __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IClientSocket __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IClientSocket __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IClientSocket __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ConnectSMTP )( 
            IClientSocket __RPC_FAR * This,
            /* [in] */ BSTR strServer,
            /* [defaultvalue][in] */ long nPort,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pRet);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DisconnectSMTP )( 
            IClientSocket __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pRet);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PrepareSMTP )( 
            IClientSocket __RPC_FAR * This,
            /* [in] */ LPDISPATCH pDecoder,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetResultSMTP )( 
            IClientSocket __RPC_FAR * This,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);
        
        END_INTERFACE
    } IClientSocketVtbl;

    interface IClientSocket
    {
        CONST_VTBL struct IClientSocketVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IClientSocket_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IClientSocket_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IClientSocket_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IClientSocket_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IClientSocket_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IClientSocket_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IClientSocket_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IClientSocket_ConnectSMTP(This,strServer,nPort,pRet)	\
    (This)->lpVtbl -> ConnectSMTP(This,strServer,nPort,pRet)

#define IClientSocket_DisconnectSMTP(This,pRet)	\
    (This)->lpVtbl -> DisconnectSMTP(This,pRet)

#define IClientSocket_PrepareSMTP(This,pDecoder,pbvarResult)	\
    (This)->lpVtbl -> PrepareSMTP(This,pDecoder,pbvarResult)

#define IClientSocket_GetResultSMTP(This,pbvarResult)	\
    (This)->lpVtbl -> GetResultSMTP(This,pbvarResult)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IClientSocket_ConnectSMTP_Proxy( 
    IClientSocket __RPC_FAR * This,
    /* [in] */ BSTR strServer,
    /* [defaultvalue][in] */ long nPort,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pRet);


void __RPC_STUB IClientSocket_ConnectSMTP_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IClientSocket_DisconnectSMTP_Proxy( 
    IClientSocket __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pRet);


void __RPC_STUB IClientSocket_DisconnectSMTP_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IClientSocket_PrepareSMTP_Proxy( 
    IClientSocket __RPC_FAR * This,
    /* [in] */ LPDISPATCH pDecoder,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);


void __RPC_STUB IClientSocket_PrepareSMTP_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IClientSocket_GetResultSMTP_Proxy( 
    IClientSocket __RPC_FAR * This,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);


void __RPC_STUB IClientSocket_GetResultSMTP_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IClientSocket_INTERFACE_DEFINED__ */


#ifndef __IMimeBody_INTERFACE_DEFINED__
#define __IMimeBody_INTERFACE_DEFINED__

/* interface IMimeBody */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IMimeBody;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("827BEB32-FDED-4AA7-B5B9-955AB40267E4")
    IMimeBody : public IDispatch
    {
    public:
        virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
            /* [in] */ long Index,
            /* [retval][out] */ LPVARIANT pVariant) = 0;
        
        virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
            /* [retval][out] */ long __RPC_FAR *pVal) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE AddNew( 
            /* [retval][out] */ LPDISPATCH __RPC_FAR *ppResult) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE Remove( 
            /* [in] */ long Index) = 0;
        
        virtual /* [id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MajorContentType( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MajorContentType( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinorContentType( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_MinorContentType( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ExtField( 
            /* [in] */ BSTR strName,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ExtField( 
            /* [in] */ BSTR strName,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Encoding( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Encoding( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Description( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Description( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_ContentID( 
            /* [retval][out] */ VARIANT __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_ContentID( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ExportAsFile( 
            /* [in] */ BSTR Path,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImportFromFile( 
            /* [in] */ BSTR Path,
            /* [defaultvalue][in] */ VARIANT_BOOL StreamByReference,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Export( 
            /* [in] */ LPUNKNOWN pStream,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Import( 
            /* [in] */ LPUNKNOWN pStream,
            /* [defaultvalue][in] */ VARIANT_BOOL StreamByReference,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FileName( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FileName( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
            /* [retval][out] */ BSTR __RPC_FAR *pVal) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
            /* [in] */ BSTR newVal) = 0;
        
        virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_EmbeddedMessage( 
            /* [retval][out] */ LPDISPATCH __RPC_FAR *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IMimeBodyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
            IMimeBody __RPC_FAR * This);
        
        ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
            IMimeBody __RPC_FAR * This);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
            IMimeBody __RPC_FAR * This,
            /* [out] */ UINT __RPC_FAR *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
            /* [out] */ VARIANT __RPC_FAR *pVarResult,
            /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
            /* [out] */ UINT __RPC_FAR *puArgErr);
        
        /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ long Index,
            /* [retval][out] */ LPVARIANT pVariant);
        
        /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ long __RPC_FAR *pVal);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AddNew )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ LPDISPATCH __RPC_FAR *ppResult);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Remove )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ long Index);
        
        /* [id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clear )( 
            IMimeBody __RPC_FAR * This);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MajorContentType )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MajorContentType )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MinorContentType )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_MinorContentType )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ExtField )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ BSTR strName,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ExtField )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ BSTR strName,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Encoding )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Encoding )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Description )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Description )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_ContentID )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ VARIANT __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_ContentID )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ExportAsFile )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ BSTR Path,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ImportFromFile )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ BSTR Path,
            /* [defaultvalue][in] */ VARIANT_BOOL StreamByReference,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Export )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ LPUNKNOWN pStream,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Import )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ LPUNKNOWN pStream,
            /* [defaultvalue][in] */ VARIANT_BOOL StreamByReference,
            /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_FileName )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_FileName )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ BSTR __RPC_FAR *pVal);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
            IMimeBody __RPC_FAR * This,
            /* [in] */ BSTR newVal);
        
        /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_EmbeddedMessage )( 
            IMimeBody __RPC_FAR * This,
            /* [retval][out] */ LPDISPATCH __RPC_FAR *pVal);
        
        END_INTERFACE
    } IMimeBodyVtbl;

    interface IMimeBody
    {
        CONST_VTBL struct IMimeBodyVtbl __RPC_FAR *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IMimeBody_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IMimeBody_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IMimeBody_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IMimeBody_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IMimeBody_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IMimeBody_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IMimeBody_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IMimeBody_get_Item(This,Index,pVariant)	\
    (This)->lpVtbl -> get_Item(This,Index,pVariant)

#define IMimeBody_get_Count(This,pVal)	\
    (This)->lpVtbl -> get_Count(This,pVal)

#define IMimeBody_AddNew(This,ppResult)	\
    (This)->lpVtbl -> AddNew(This,ppResult)

#define IMimeBody_Remove(This,Index)	\
    (This)->lpVtbl -> Remove(This,Index)

#define IMimeBody_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IMimeBody_get_MajorContentType(This,pVal)	\
    (This)->lpVtbl -> get_MajorContentType(This,pVal)

#define IMimeBody_put_MajorContentType(This,newVal)	\
    (This)->lpVtbl -> put_MajorContentType(This,newVal)

#define IMimeBody_get_MinorContentType(This,pVal)	\
    (This)->lpVtbl -> get_MinorContentType(This,pVal)

#define IMimeBody_put_MinorContentType(This,newVal)	\
    (This)->lpVtbl -> put_MinorContentType(This,newVal)

#define IMimeBody_get_ExtField(This,strName,pVal)	\
    (This)->lpVtbl -> get_ExtField(This,strName,pVal)

#define IMimeBody_put_ExtField(This,strName,newVal)	\
    (This)->lpVtbl -> put_ExtField(This,strName,newVal)

#define IMimeBody_get_Encoding(This,pVal)	\
    (This)->lpVtbl -> get_Encoding(This,pVal)

#define IMimeBody_put_Encoding(This,newVal)	\
    (This)->lpVtbl -> put_Encoding(This,newVal)

#define IMimeBody_get_Description(This,pVal)	\
    (This)->lpVtbl -> get_Description(This,pVal)

#define IMimeBody_put_Description(This,newVal)	\
    (This)->lpVtbl -> put_Description(This,newVal)

#define IMimeBody_get_ContentID(This,pVal)	\
    (This)->lpVtbl -> get_ContentID(This,pVal)

#define IMimeBody_put_ContentID(This,newVal)	\
    (This)->lpVtbl -> put_ContentID(This,newVal)

#define IMimeBody_ExportAsFile(This,Path,pbvarResult)	\
    (This)->lpVtbl -> ExportAsFile(This,Path,pbvarResult)

#define IMimeBody_ImportFromFile(This,Path,StreamByReference,pbvarResult)	\
    (This)->lpVtbl -> ImportFromFile(This,Path,StreamByReference,pbvarResult)

#define IMimeBody_Export(This,pStream,pbvarResult)	\
    (This)->lpVtbl -> Export(This,pStream,pbvarResult)

#define IMimeBody_Import(This,pStream,StreamByReference,pbvarResult)	\
    (This)->lpVtbl -> Import(This,pStream,StreamByReference,pbvarResult)

#define IMimeBody_get_FileName(This,pVal)	\
    (This)->lpVtbl -> get_FileName(This,pVal)

#define IMimeBody_put_FileName(This,newVal)	\
    (This)->lpVtbl -> put_FileName(This,newVal)

#define IMimeBody_get_Value(This,pVal)	\
    (This)->lpVtbl -> get_Value(This,pVal)

#define IMimeBody_put_Value(This,newVal)	\
    (This)->lpVtbl -> put_Value(This,newVal)

#define IMimeBody_get_EmbeddedMessage(This,pVal)	\
    (This)->lpVtbl -> get_EmbeddedMessage(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_Item_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ long Index,
    /* [retval][out] */ LPVARIANT pVariant);


void __RPC_STUB IMimeBody_get_Item_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_Count_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ long __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_Count_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE IMimeBody_AddNew_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ LPDISPATCH __RPC_FAR *ppResult);


void __RPC_STUB IMimeBody_AddNew_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE IMimeBody_Remove_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ long Index);


void __RPC_STUB IMimeBody_Remove_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [id] */ HRESULT STDMETHODCALLTYPE IMimeBody_Clear_Proxy( 
    IMimeBody __RPC_FAR * This);


void __RPC_STUB IMimeBody_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_MajorContentType_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_MajorContentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeBody_put_MajorContentType_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeBody_put_MajorContentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_MinorContentType_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_MinorContentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeBody_put_MinorContentType_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeBody_put_MinorContentType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_ExtField_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ BSTR strName,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_ExtField_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeBody_put_ExtField_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ BSTR strName,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeBody_put_ExtField_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_Encoding_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_Encoding_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeBody_put_Encoding_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeBody_put_Encoding_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_Description_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeBody_put_Description_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeBody_put_Description_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_ContentID_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ VARIANT __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_ContentID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeBody_put_ContentID_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IMimeBody_put_ContentID_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMimeBody_ExportAsFile_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ BSTR Path,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);


void __RPC_STUB IMimeBody_ExportAsFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMimeBody_ImportFromFile_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ BSTR Path,
    /* [defaultvalue][in] */ VARIANT_BOOL StreamByReference,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);


void __RPC_STUB IMimeBody_ImportFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMimeBody_Export_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ LPUNKNOWN pStream,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);


void __RPC_STUB IMimeBody_Export_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMimeBody_Import_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ LPUNKNOWN pStream,
    /* [defaultvalue][in] */ VARIANT_BOOL StreamByReference,
    /* [retval][out] */ VARIANT_BOOL __RPC_FAR *pbvarResult);


void __RPC_STUB IMimeBody_Import_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_FileName_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeBody_put_FileName_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ BSTR newVal);


void __RPC_STUB IMimeBody_put_FileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_Value_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ BSTR __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMimeBody_put_Value_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [in] */ BSTR newVal);


void __RPC_STUB IMimeBody_put_Value_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMimeBody_get_EmbeddedMessage_Proxy( 
    IMimeBody __RPC_FAR * This,
    /* [retval][out] */ LPDISPATCH __RPC_FAR *pVal);


void __RPC_STUB IMimeBody_get_EmbeddedMessage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IMimeBody_INTERFACE_DEFINED__ */


EXTERN_C const CLSID CLSID_MimeDecoder;

#ifdef __cplusplus

class DECLSPEC_UUID("DAE27546-4F73-41AE-A802-F5C4D7CD57BA")
MimeDecoder;
#endif

EXTERN_C const CLSID CLSID_MailAddress;

#ifdef __cplusplus

class DECLSPEC_UUID("5F00447B-8A10-46AE-BDA3-F95EE73769B8")
MailAddress;
#endif

EXTERN_C const CLSID CLSID_Collection;

#ifdef __cplusplus

class DECLSPEC_UUID("22C47B61-CF66-43E0-8A83-E0A0422680C4")
Collection;
#endif

EXTERN_C const CLSID CLSID_ClientSocket;

#ifdef __cplusplus

class DECLSPEC_UUID("1D8F02C8-4D92-4B65-8DE8-877FF4EBFA14")
ClientSocket;
#endif

EXTERN_C const CLSID CLSID_MimeBody;

#ifdef __cplusplus

class DECLSPEC_UUID("95B35A0B-F6E6-4705-A938-321E7DE86472")
MimeBody;
#endif
#endif /* __MIMESNIFFERLib_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Web Developer
Germany Germany
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions