MailClient.Append Method


Appends an email to specified IMAP4 folder.

[Visual Basic]
Public Sub Append( _
    folder As Imap4Folder, _
    data() As Byte _
)
[C#]
public void Append(
    Imap4Folder folder,
    byte[] data
);
[C++]
public: void Append(
    Imap4Folder* folder,
    unsigned char data __gc[]
);
[JScript]
public function Append( 
    folder: Imap4Folder,
    data: Byte []
);

Parameters

folder
The dest IMAP folder.
data
The binary data of email.

Example

[Visual Basic, C#, C++] The following example demonstrates how to append email to "INBOX" with EAGetMail POP3 & IMAP Component. To get the full samples of EAGetMail, please refer to Samples section.

[Visual Basic]
Imports EAGetMail

Sub AppendEmail(ByVal emlFile As String, _
ByVal server As String, _
ByVal user As String, _
ByVal password As String)
    Try
        Dim oMail As New Mail("TryIt")
        oMail.Load(emlFile, False)

        Dim oClient As New MailClient("TryIt")
        Dim oServer As New MailServer(server, user, password, ServerProtocol.Imap4)
        oClient.Connect(oServer)
        Dim folders() As Imap4Folder = oClient.Imap4Folders
        Dim count As Integer = folders.Length
        For i As Integer = 0 To count - 1
            Dim folder As Imap4Folder = folders(i)
            If String.Compare("INBOX", folder.Name, True) = 0 Then
                'appends this email to "INBOX" folder
                oClient.Append(folder, oMail.Content)
                Exit For
            End If
        Next
        oClient.Logout()
    Catch ep As Exception
        Console.WriteLine(ep.Message)
    End Try
End Sub

[C#]
using System;
using System.Collections;
using EAGetMail;

public static void AppendEmail( string emlFile,
    string server,
    string user,
    string password )
{
    try
    {
        Mail oMail = new Mail("TryIt");
        oMail.Load( emlFile, false );

        MailClient oClient = new MailClient("TryIt");
        MailServer oServer = new MailServer( server, user, password, ServerProtocol.Imap4 );
        oClient.Connect( oServer );
        Imap4Folder [] folders = oClient.Imap4Folders;
        int count = folders.Length;
        for( int i = 0; i < count; i++ )
        {
            Imap4Folder folder = folders[i];
            if( String.Compare( "INBOX", folder.Name, true ) == 0 )
            {
                //appends this email to "INBOX" folder
                oClient.Append( folder, oMail.Content );
                break;
            }
        }
        oClient.Logout();
    }
    catch( Exception ep )
    {
        Console.WriteLine( ep.Message );
    }
}

[C++]
using namespace System;
using namespace System::Collections;
using namespace EAGetMail; 

Void AppendEmail( String* emlFile,
                 String* server,
                 String* user,
                 String* password )
{
    try
    {
        Mail* oMail = new Mail(S"TryIt");
        oMail->Load( emlFile, false );

        MailClient *oClient = new MailClient(S"TryIt");
        MailServer *oServer = new MailServer( server, user, password, ServerProtocol::Imap4 );

        oClient->Connect( oServer );
        Imap4Folder *folders [] = oClient->Imap4Folders;
        int count = folders->Length;
        for( int i = 0; i < count; i++ )
        {
            Imap4Folder *folder = folders[i];
            if( String::Compare( S"INBOX", folder->Name, true ) == 0 )
            {
                //appends email to "INBOX"
                oClient->Append( folder, oMail->Content );
                break;
            }
        }

        oClient->Logout();
    }
    catch( Exception *ep )
    {
        Console::WriteLine( ep->Message );
    }
}