// Created by Microsoft (R) C/C++ Compiler Version 13.00.9176 (eef4f361).
//
// g:\src\sdktools\debuggers\excepmon\emsvc\obj\i386\cdonts.tlh
//
// C++ source equivalent of Win32 type library cdonts.dll
// compiler-generated file created 05/06/01 at 03:49:51 - DO NOT EDIT!

#pragma once
#pragma pack(push, 8)

#include <comdef.h>

//
// Forward references and typedefs
//

struct __declspec(uuid("0e064add-9d99-11d0-abe5-00aa0064d470"))
/* LIBID */ __CDONTS;
enum CdoRecipientTypes;
enum CdoImportance;
enum CdoAttachmentTypes;
enum CdoFolderTypes;
enum CdoMessageFormats;
enum CdoMailFormats;
enum CdoBodyFormats;
enum CdoEncodingMethod;
typedef enum __MIDL___MIDL_itf_actmsg_0253_0001 CdoObjectClass;
enum __MIDL___MIDL_itf_actmsg_0253_0001;
struct /* coclass */ NewMail;
struct __declspec(uuid("af0eb60d-0775-11d1-a77d-00c04fc2f5b3"))
/* dual interface */ INewMail;
struct /* coclass */ Session;
struct __declspec(uuid("0e064aeb-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ ISession;
struct __declspec(uuid("0e064a08-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ AddressEntry;
struct __declspec(uuid("0e064a07-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ Attachment;
struct __declspec(uuid("0e064a06-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ Attachments;
struct __declspec(uuid("0e064a01-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ Folder;
struct __declspec(uuid("0e064a02-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ Messages;
struct __declspec(uuid("0e064a03-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ Message;
struct __declspec(uuid("0e064a05-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ Recipient;
struct __declspec(uuid("0e064a04-9d99-11d0-abe5-00aa0064d470"))
/* dual interface */ Recipients;

//
// Smart pointer typedef declarations
//

_COM_SMARTPTR_TYPEDEF(INewMail, __uuidof(INewMail));
_COM_SMARTPTR_TYPEDEF(ISession, __uuidof(ISession));
_COM_SMARTPTR_TYPEDEF(AddressEntry, __uuidof(AddressEntry));
_COM_SMARTPTR_TYPEDEF(Attachment, __uuidof(Attachment));
_COM_SMARTPTR_TYPEDEF(Attachments, __uuidof(Attachments));
_COM_SMARTPTR_TYPEDEF(Folder, __uuidof(Folder));
_COM_SMARTPTR_TYPEDEF(Messages, __uuidof(Messages));
_COM_SMARTPTR_TYPEDEF(Message, __uuidof(Message));
_COM_SMARTPTR_TYPEDEF(Recipient, __uuidof(Recipient));
_COM_SMARTPTR_TYPEDEF(Recipients, __uuidof(Recipients));

//
// Type library items
//

enum CdoRecipientTypes
{
    CdoTo = 1,
    CdoCc = 2,
    CdoBcc = 3
};

enum CdoImportance
{
    CdoLow = 0,
    CdoNormal = 1,
    CdoHigh = 2
};

enum CdoAttachmentTypes
{
    CdoFileData = 1,
    CdoEmbeddedMessage = 4
};

enum CdoFolderTypes
{
    CdoDefaultFolderInbox = 1,
    CdoDefaultFolderOutbox = 2
};

enum CdoMessageFormats
{
    CdoMime = 0,
    CdoText = 1
};

enum CdoMailFormats
{
    CdoMailFormatMime = 0,
    CdoMailFormatText = 1
};

enum CdoBodyFormats
{
    CdoBodyFormatHTML = 0,
    CdoBodyFormatText = 1
};

enum CdoEncodingMethod
{
    CdoEncodingUUencode = 0,
    CdoEncodingBase64 = 1
};

enum __MIDL___MIDL_itf_actmsg_0253_0001
{
    CdoSession = 0,
    CdoFolder = 2,
    CdoMsg = 3,
    CdoRecipient = 4,
    CdoAttachment = 5,
    CdoAddressEntry = 8,
    CdoMessages = 16,
    CdoRecipients = 17,
    CdoAttachments = 18,
    CdoClassTotal = 29
};

struct __declspec(uuid("af0eb60e-0775-11d1-a77d-00c04fc2f5b3"))
NewMail;
    // [ default ] interface INewMail

struct __declspec(uuid("af0eb60d-0775-11d1-a77d-00c04fc2f5b3"))
INewMail : IDispatch
{
    //
    // Property data
    //

    __declspec(property(put=PutTo))
    _bstr_t To;
    __declspec(property(put=PutCc))
    _bstr_t Cc;
    __declspec(property(put=PutBcc))
    _bstr_t Bcc;
    __declspec(property(put=PutBody))
    _variant_t Body;
    __declspec(property(put=PutImportance))
    long Importance;
    __declspec(property(put=PutBodyFormat))
    long BodyFormat;
    __declspec(property(put=PutMailFormat))
    long MailFormat;
    __declspec(property(put=PutSubject))
    _bstr_t Subject;
    __declspec(property(put=PutFrom))
    _bstr_t From;
    __declspec(property(put=PutContentLocation))
    _bstr_t ContentLocation;
    __declspec(property(put=PutContentBase))
    _bstr_t ContentBase;
    __declspec(property(get=GetVersion))
    _bstr_t Version;

    //
    // Wrapper methods for error-handling
    //

    void PutValue (
        _bstr_t bstrHeader,
        _bstr_t _arg2 );
    void PutTo (
        _bstr_t _arg1 );
    void PutCc (
        _bstr_t _arg1 );
    void PutBcc (
        _bstr_t _arg1 );
    void PutBody (
        const _variant_t & _arg1 );
    void PutImportance (
        long _arg1 );
    void PutBodyFormat (
        long _arg1 );
    void PutMailFormat (
        long _arg1 );
    void PutSubject (
        _bstr_t _arg1 );
    void PutFrom (
        _bstr_t _arg1 );
    HRESULT Send (
        const _variant_t & From = vtMissing,
        const _variant_t & To = vtMissing,
        const _variant_t & Subject = vtMissing,
        const _variant_t & Body = vtMissing,
        const _variant_t & Importance = vtMissing );
    HRESULT AttachFile (
        const _variant_t & Source,
        const _variant_t & FileName = vtMissing,
        const _variant_t & EncodingMethod = vtMissing );
    HRESULT AttachURL (
        const _variant_t & Source,
        const _variant_t & ContentLocation,
        const _variant_t & ContentBase = vtMissing,
        const _variant_t & EncodingMethod = vtMissing );
    HRESULT SetLocaleIDs (
        long CodePageID );
    void PutContentLocation (
        _bstr_t _arg1 );
    void PutContentBase (
        _bstr_t _arg1 );
    _bstr_t GetVersion ( );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall put_Value (
        BSTR bstrHeader,
        /*[in]*/ BSTR _arg2 ) = 0;
      virtual HRESULT __stdcall put_To (
        /*[in]*/ BSTR _arg1 ) = 0;
      virtual HRESULT __stdcall put_Cc (
        /*[in]*/ BSTR _arg1 ) = 0;
      virtual HRESULT __stdcall put_Bcc (
        /*[in]*/ BSTR _arg1 ) = 0;
      virtual HRESULT __stdcall put_Body (
        /*[in]*/ VARIANT _arg1 ) = 0;
      virtual HRESULT __stdcall put_Importance (
        /*[in]*/ long _arg1 ) = 0;
      virtual HRESULT __stdcall put_BodyFormat (
        /*[in]*/ long _arg1 ) = 0;
      virtual HRESULT __stdcall put_MailFormat (
        /*[in]*/ long _arg1 ) = 0;
      virtual HRESULT __stdcall put_Subject (
        /*[in]*/ BSTR _arg1 ) = 0;
      virtual HRESULT __stdcall put_From (
        /*[in]*/ BSTR _arg1 ) = 0;
      virtual HRESULT __stdcall raw_Send (
        /*[in]*/ VARIANT From = vtMissing,
        /*[in]*/ VARIANT To = vtMissing,
        /*[in]*/ VARIANT Subject = vtMissing,
        /*[in]*/ VARIANT Body = vtMissing,
        /*[in]*/ VARIANT Importance = vtMissing ) = 0;
      virtual HRESULT __stdcall raw_AttachFile (
        /*[in]*/ VARIANT Source,
        /*[in]*/ VARIANT FileName = vtMissing,
        /*[in]*/ VARIANT EncodingMethod = vtMissing ) = 0;
      virtual HRESULT __stdcall raw_AttachURL (
        /*[in]*/ VARIANT Source,
        /*[in]*/ VARIANT ContentLocation,
        /*[in]*/ VARIANT ContentBase = vtMissing,
        /*[in]*/ VARIANT EncodingMethod = vtMissing ) = 0;
      virtual HRESULT __stdcall raw_SetLocaleIDs (
        /*[in]*/ long CodePageID ) = 0;
      virtual HRESULT __stdcall put_ContentLocation (
        /*[in]*/ BSTR _arg1 ) = 0;
      virtual HRESULT __stdcall put_ContentBase (
        /*[in]*/ BSTR _arg1 ) = 0;
      virtual HRESULT __stdcall get_Version (
        /*[out,retval]*/ BSTR * Version ) = 0;
};

struct __declspec(uuid("0e064aec-9d99-11d0-abe5-00aa0064d470"))
Session;
    // [ default ] interface ISession

struct __declspec(uuid("0e064aeb-9d99-11d0-abe5-00aa0064d470"))
ISession : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetName))
    _bstr_t Name;
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetVersion))
    _bstr_t Version;
    __declspec(property(get=GetMessageFormat,put=PutMessageFormat))
    long MessageFormat;
    __declspec(property(get=GetInbox))
    _variant_t Inbox;
    __declspec(property(get=GetOutbox))
    _variant_t Outbox;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetParent))
    _variant_t Parent;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    _bstr_t GetVersion ( );
    _bstr_t GetName ( );
    _variant_t GetInbox ( );
    _variant_t GetOutbox ( );
    long GetMessageFormat ( );
    void PutMessageFormat (
        long pMessageFormat );
    HRESULT LogonSMTP (
        const _variant_t & DisplayName,
        const _variant_t & Address );
    HRESULT Logoff ( );
    _variant_t GetDefaultFolder (
        const _variant_t & Type );
    _variant_t GetMessageCDOEm (
        const _variant_t & MessageID,
        const _variant_t & StoreID = vtMissing );
    HRESULT SetLocaleIDs (
        long CodePageID );
    HRESULT SetReserved (
        const _variant_t & var1,
        const _variant_t & var2 );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Version (
        /*[out,retval]*/ BSTR * varVersion ) = 0;
      virtual HRESULT __stdcall get_Name (
        /*[out,retval]*/ BSTR * varName ) = 0;
      virtual HRESULT __stdcall get_Inbox (
        /*[out,retval]*/ VARIANT * varInbox ) = 0;
      virtual HRESULT __stdcall get_Outbox (
        /*[out,retval]*/ VARIANT * varOutbox ) = 0;
      virtual HRESULT __stdcall get_MessageFormat (
        /*[out,retval]*/ long * pMessageFormat ) = 0;
      virtual HRESULT __stdcall put_MessageFormat (
        /*[in]*/ long pMessageFormat ) = 0;
      virtual HRESULT __stdcall raw_LogonSMTP (
        /*[in]*/ VARIANT DisplayName,
        /*[in]*/ VARIANT Address ) = 0;
      virtual HRESULT __stdcall raw_Logoff ( ) = 0;
      virtual HRESULT __stdcall raw_GetDefaultFolder (
        /*[in]*/ VARIANT Type,
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall raw_GetMessageCDOEm (
        /*[in]*/ VARIANT MessageID,
        /*[in]*/ VARIANT StoreID,
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall raw_SetLocaleIDs (
        /*[in]*/ long CodePageID ) = 0;
      virtual HRESULT __stdcall raw_SetReserved (
        /*[in]*/ VARIANT var1,
        /*[in]*/ VARIANT var2 ) = 0;
};

struct __declspec(uuid("0e064a08-9d99-11d0-abe5-00aa0064d470"))
AddressEntry : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetName))
    _bstr_t Name;
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetAddress))
    _bstr_t Address;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetType))
    _bstr_t Type;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetParent))
    _variant_t Parent;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    _bstr_t GetName ( );
    _bstr_t GetAddress ( );
    _bstr_t GetType ( );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Name (
        /*[out,retval]*/ BSTR * pbstrName ) = 0;
      virtual HRESULT __stdcall get_Address (
        /*[out,retval]*/ BSTR * varAddress ) = 0;
      virtual HRESULT __stdcall get_Type (
        /*[out,retval]*/ BSTR * varType ) = 0;
};

struct __declspec(uuid("0e064a07-9d99-11d0-abe5-00aa0064d470"))
Attachment : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetName,put=PutName))
    _bstr_t Name;
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetSource,put=PutSource))
    _variant_t Source;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetContentLocation))
    _variant_t ContentLocation;
    __declspec(property(get=GetContentBase))
    _variant_t ContentBase;
    __declspec(property(get=GetContentID))
    _variant_t ContentID;
    __declspec(property(get=GetType,put=PutType))
    long Type;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetParent))
    _variant_t Parent;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    _bstr_t GetName ( );
    void PutName (
        _bstr_t pbstrName );
    long GetType ( );
    void PutType (
        long pType );
    _variant_t GetSource ( );
    void PutSource (
        const _variant_t & varSource );
    _variant_t GetContentLocation ( );
    _variant_t GetContentBase ( );
    _variant_t GetContentID ( );
    HRESULT Delete ( );
    HRESULT ReadFromFile (
        _bstr_t FileName );
    HRESULT WriteToFile (
        _bstr_t FileName );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Name (
        /*[out,retval]*/ BSTR * pbstrName ) = 0;
      virtual HRESULT __stdcall put_Name (
        /*[in]*/ BSTR pbstrName ) = 0;
      virtual HRESULT __stdcall get_Type (
        /*[out,retval]*/ long * pType ) = 0;
      virtual HRESULT __stdcall put_Type (
        /*[in]*/ long pType ) = 0;
      virtual HRESULT __stdcall get_Source (
        /*[out,retval]*/ VARIANT * varSource ) = 0;
      virtual HRESULT __stdcall put_Source (
        /*[in]*/ VARIANT varSource ) = 0;
      virtual HRESULT __stdcall get_ContentLocation (
        /*[out,retval]*/ VARIANT * varContentLocation ) = 0;
      virtual HRESULT __stdcall get_ContentBase (
        /*[out,retval]*/ VARIANT * varContentBase ) = 0;
      virtual HRESULT __stdcall get_ContentID (
        /*[out,retval]*/ VARIANT * varContentID ) = 0;
      virtual HRESULT __stdcall raw_Delete ( ) = 0;
      virtual HRESULT __stdcall raw_ReadFromFile (
        /*[in]*/ BSTR FileName ) = 0;
      virtual HRESULT __stdcall raw_WriteToFile (
        /*[in]*/ BSTR FileName ) = 0;
};

struct __declspec(uuid("0e064a06-9d99-11d0-abe5-00aa0064d470"))
Attachments : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetItem))
    _variant_t Item[];
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetCount))
    long Count;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetParent))
    _variant_t Parent;
    __declspec(property(get=Get_NewEnum))
    IUnknownPtr _NewEnum;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    _variant_t GetItem (
        VARIANT * var );
    long GetCount ( );
    IUnknownPtr Get_NewEnum ( );
    _variant_t Add (
        const _variant_t & Name = vtMissing,
        const _variant_t & Type = vtMissing,
        const _variant_t & Source = vtMissing,
        const _variant_t & ContentLocation = vtMissing,
        const _variant_t & ContentBase = vtMissing );
    HRESULT Delete ( );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Item (
        /*[in]*/ VARIANT * var,
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall get_Count (
        /*[out,retval]*/ long * varCount ) = 0;
      virtual HRESULT __stdcall get__NewEnum (
        /*[out,retval]*/ IUnknown * * ppunkResult ) = 0;
      virtual HRESULT __stdcall raw_Add (
        /*[in]*/ VARIANT Name,
        /*[in]*/ VARIANT Type,
        /*[in]*/ VARIANT Source,
        /*[in]*/ VARIANT ContentLocation,
        /*[in]*/ VARIANT ContentBase,
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall raw_Delete ( ) = 0;
};

struct __declspec(uuid("0e064a01-9d99-11d0-abe5-00aa0064d470"))
Folder : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetMessages))
    _variant_t Messages;
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetName))
    _bstr_t Name;
    __declspec(property(get=GetParent))
    _variant_t Parent;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    _bstr_t GetName ( );
    _variant_t GetMessages ( );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Name (
        /*[out,retval]*/ BSTR * varName ) = 0;
      virtual HRESULT __stdcall get_Messages (
        /*[out,retval]*/ VARIANT * varMessages ) = 0;
};

struct __declspec(uuid("0e064a02-9d99-11d0-abe5-00aa0064d470"))
Messages : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetItem))
    _variant_t Item[];
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetCount))
    long Count;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetParent))
    _variant_t Parent;
    __declspec(property(get=Get_NewEnum))
    IUnknownPtr _NewEnum;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    long GetCount ( );
    _variant_t GetItem (
        VARIANT * var );
    IUnknownPtr Get_NewEnum ( );
    _variant_t Add (
        const _variant_t & Subject = vtMissing,
        const _variant_t & Text = vtMissing,
        const _variant_t & Importance = vtMissing );
    HRESULT Delete ( );
    _variant_t GetFirst ( );
    _variant_t GetNext ( );
    _variant_t GetLast ( );
    _variant_t GetPrevious ( );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Count (
        /*[out,retval]*/ long * varCount ) = 0;
      virtual HRESULT __stdcall get_Item (
        /*[in]*/ VARIANT * var,
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall get__NewEnum (
        /*[out,retval]*/ IUnknown * * ppunkResult ) = 0;
      virtual HRESULT __stdcall raw_Add (
        /*[in]*/ VARIANT Subject,
        /*[in]*/ VARIANT Text,
        /*[in]*/ VARIANT Importance,
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall raw_Delete ( ) = 0;
      virtual HRESULT __stdcall raw_GetFirst (
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall raw_GetNext (
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall raw_GetLast (
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall raw_GetPrevious (
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
};

struct __declspec(uuid("0e064a03-9d99-11d0-abe5-00aa0064d470"))
Message : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetSubject,put=PutSubject))
    _bstr_t Subject;
    __declspec(property(get=GetSender))
    _variant_t Sender;
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetSize))
    long Size;
    __declspec(property(get=GetAttachments))
    _variant_t Attachments;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetText,put=PutText))
    _variant_t Text;
    __declspec(property(get=GetTimeReceived,put=PutTimeReceived))
    _variant_t TimeReceived;
    __declspec(property(get=GetTimeSent,put=PutTimeSent))
    _variant_t TimeSent;
    __declspec(property(get=GetHTMLText,put=PutHTMLText))
    _variant_t HTMLText;
    __declspec(property(put=PutMessageFormat))
    long MessageFormat;
    __declspec(property(get=GetContentLocation,put=PutContentLocation))
    _variant_t ContentLocation;
    __declspec(property(get=GetContentBase,put=PutContentBase))
    _variant_t ContentBase;
    __declspec(property(get=GetContentID,put=PutContentID))
    _variant_t ContentID;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetParent))
    _variant_t Parent;
    __declspec(property(get=GetImportance,put=PutImportance))
    long Importance;
    __declspec(property(get=GetRecipients,put=PutRecipients))
    _variant_t Recipients;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    long GetSize ( );
    long GetImportance ( );
    void PutImportance (
        long pImportance );
    _bstr_t GetSubject ( );
    void PutSubject (
        _bstr_t pSubject );
    _variant_t GetSender ( );
    _variant_t GetTimeSent ( );
    void PutTimeSent (
        const _variant_t & varTimeSent );
    _variant_t GetTimeReceived ( );
    void PutTimeReceived (
        const _variant_t & varTimeReceived );
    _variant_t GetText ( );
    void PutText (
        const _variant_t & varText );
    _variant_t GetHTMLText ( );
    void PutHTMLText (
        const _variant_t & varHTMLText );
    _variant_t GetRecipients ( );
    void PutRecipients (
        const _variant_t & varRecipients );
    _variant_t GetAttachments ( );
    void PutMessageFormat (
        long _arg1 );
    _variant_t GetContentLocation ( );
    void PutContentLocation (
        const _variant_t & varContentLocation );
    _variant_t GetContentBase ( );
    void PutContentBase (
        const _variant_t & varContentBase );
    _variant_t GetContentID ( );
    void PutContentID (
        const _variant_t & varContentID );
    HRESULT Delete ( );
    HRESULT Send ( );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Size (
        /*[out,retval]*/ long * varSize ) = 0;
      virtual HRESULT __stdcall get_Importance (
        /*[out,retval]*/ long * pImportance ) = 0;
      virtual HRESULT __stdcall put_Importance (
        /*[in]*/ long pImportance ) = 0;
      virtual HRESULT __stdcall get_Subject (
        /*[out,retval]*/ BSTR * pSubject ) = 0;
      virtual HRESULT __stdcall put_Subject (
        /*[in]*/ BSTR pSubject ) = 0;
      virtual HRESULT __stdcall get_Sender (
        /*[out,retval]*/ VARIANT * varSender ) = 0;
      virtual HRESULT __stdcall get_TimeSent (
        /*[out,retval]*/ VARIANT * varTimeSent ) = 0;
      virtual HRESULT __stdcall put_TimeSent (
        /*[in]*/ VARIANT varTimeSent ) = 0;
      virtual HRESULT __stdcall get_TimeReceived (
        /*[out,retval]*/ VARIANT * varTimeReceived ) = 0;
      virtual HRESULT __stdcall put_TimeReceived (
        /*[in]*/ VARIANT varTimeReceived ) = 0;
      virtual HRESULT __stdcall get_Text (
        /*[out,retval]*/ VARIANT * varText ) = 0;
      virtual HRESULT __stdcall put_Text (
        /*[in]*/ VARIANT varText ) = 0;
      virtual HRESULT __stdcall get_HTMLText (
        /*[out,retval]*/ VARIANT * varHTMLText ) = 0;
      virtual HRESULT __stdcall put_HTMLText (
        /*[in]*/ VARIANT varHTMLText ) = 0;
      virtual HRESULT __stdcall get_Recipients (
        /*[out,retval]*/ VARIANT * varRecipients ) = 0;
      virtual HRESULT __stdcall put_Recipients (
        /*[in]*/ VARIANT varRecipients ) = 0;
      virtual HRESULT __stdcall get_Attachments (
        /*[out,retval]*/ VARIANT * varAttachments ) = 0;
      virtual HRESULT __stdcall put_MessageFormat (
        /*[in]*/ long _arg1 ) = 0;
      virtual HRESULT __stdcall get_ContentLocation (
        /*[out,retval]*/ VARIANT * varContentLocation ) = 0;
      virtual HRESULT __stdcall put_ContentLocation (
        /*[in]*/ VARIANT varContentLocation ) = 0;
      virtual HRESULT __stdcall get_ContentBase (
        /*[out,retval]*/ VARIANT * varContentBase ) = 0;
      virtual HRESULT __stdcall put_ContentBase (
        /*[in]*/ VARIANT varContentBase ) = 0;
      virtual HRESULT __stdcall get_ContentID (
        /*[out,retval]*/ VARIANT * varContentID ) = 0;
      virtual HRESULT __stdcall put_ContentID (
        /*[in]*/ VARIANT varContentID ) = 0;
      virtual HRESULT __stdcall raw_Delete ( ) = 0;
      virtual HRESULT __stdcall raw_Send ( ) = 0;
};

struct __declspec(uuid("0e064a05-9d99-11d0-abe5-00aa0064d470"))
Recipient : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetName,put=PutName))
    _bstr_t Name;
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetAddress,put=PutAddress))
    _bstr_t Address;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetType,put=PutType))
    long Type;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetParent))
    _variant_t Parent;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    _bstr_t GetName ( );
    void PutName (
        _bstr_t pbstrName );
    long GetType ( );
    void PutType (
        long pType );
    _bstr_t GetAddress ( );
    void PutAddress (
        _bstr_t pAddress );
    HRESULT Delete ( );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Name (
        /*[out,retval]*/ BSTR * pbstrName ) = 0;
      virtual HRESULT __stdcall put_Name (
        /*[in]*/ BSTR pbstrName ) = 0;
      virtual HRESULT __stdcall get_Type (
        /*[out,retval]*/ long * pType ) = 0;
      virtual HRESULT __stdcall put_Type (
        /*[in]*/ long pType ) = 0;
      virtual HRESULT __stdcall get_Address (
        /*[out,retval]*/ BSTR * pAddress ) = 0;
      virtual HRESULT __stdcall put_Address (
        /*[in]*/ BSTR pAddress ) = 0;
      virtual HRESULT __stdcall raw_Delete ( ) = 0;
};

struct __declspec(uuid("0e064a04-9d99-11d0-abe5-00aa0064d470"))
Recipients : IDispatch
{
    //
    // Property data
    //

    __declspec(property(get=GetItem))
    _variant_t Item[];
    __declspec(property(get=GetSession))
    _variant_t Session;
    __declspec(property(get=GetClass))
    long Class;
    __declspec(property(get=GetCount))
    long Count;
    __declspec(property(get=GetApplication))
    _variant_t Application;
    __declspec(property(get=GetParent))
    _variant_t Parent;
    __declspec(property(get=Get_NewEnum))
    IUnknownPtr _NewEnum;

    //
    // Wrapper methods for error-handling
    //

    _variant_t GetApplication ( );
    _variant_t GetParent ( );
    _variant_t GetSession ( );
    long GetClass ( );
    _variant_t GetItem (
        VARIANT * var );
    long GetCount ( );
    IUnknownPtr Get_NewEnum ( );
    _variant_t Add (
        const _variant_t & Name = vtMissing,
        const _variant_t & Address = vtMissing,
        const _variant_t & Type = vtMissing );
    HRESULT Delete ( );

    //
    // Raw methods provided by interface
    //

      virtual HRESULT __stdcall get_Application (
        /*[out,retval]*/ VARIANT * varApplication ) = 0;
      virtual HRESULT __stdcall get_Parent (
        /*[out,retval]*/ VARIANT * varParent ) = 0;
      virtual HRESULT __stdcall get_Session (
        /*[out,retval]*/ VARIANT * varSession ) = 0;
      virtual HRESULT __stdcall get_Class (
        /*[out,retval]*/ long * varClass ) = 0;
      virtual HRESULT __stdcall get_Item (
        /*[in]*/ VARIANT * var,
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall get_Count (
        /*[out,retval]*/ long * varCount ) = 0;
      virtual HRESULT __stdcall get__NewEnum (
        /*[out,retval]*/ IUnknown * * ppunkResult ) = 0;
      virtual HRESULT __stdcall raw_Add (
        /*[in]*/ VARIANT Name,
        /*[in]*/ VARIANT Address,
        /*[in]*/ VARIANT Type,
        /*[out,retval]*/ VARIANT * pvarResult ) = 0;
      virtual HRESULT __stdcall raw_Delete ( ) = 0;
};

//
// Wrapper method implementations
//

#include "cdonts.tli"

#pragma pack(pop)