Attaches a file to the e-mail message.
[Visual Basic]
Public Sub AddAttachmentAsync( _
    fileName As String _
) As Attachment
    
[C#]
public Attachment AddAttachmentAsync(
    string fileName
);
    
[C++]
public: Attachment^ AddAttachmentAsync(
    String^ fileName
);
    
[JScript]
public function AddAttachmentAsync( 
    fileName : String
) : Attachment;
    Parameters
Return Value
Remarks
Example
[Visual Basic, C#, JavaScript] To get the full samples of EASendMail, please refer to Samples section.
[C# - Send Email with Attachment from Windows Store Apps - XAML]
using EASendMail;
using System.Threading.Tasks;
using Windows.Storage;
private async Task SendEmail()
{
    String Result = "";
    try
    {
        SmtpMail oMail = new SmtpMail("TryIt");
        SmtpClient oSmtp = new SmtpClient();
        // Set sender email address, please change it to yours 
        oMail.From = new MailAddress("test@emailarchitect.net");
        // Add recipient email address, please change it to yours
        oMail.To.Add(new MailAddress("support@emailarchitect.net"));
        // Set email subject
        oMail.Subject = "test email from C# XAML project";
        // Set email body
        oMail.TextBody = "this is a test email with Attachment sent from Windows Store App, do not reply";
        // Your SMTP server address
        SmtpServer oServer = new SmtpServer("smtp.emailarchitect.net");
        // User and password for ESMTP authentication            
        oServer.User = "test@emailarchitect.net";
        oServer.Password = "testpassword";
        // If your SMTP server requires TLS connection on 25 port, please add this line
        // oServer.ConnectType = SmtpConnectType.ConnectSSLAuto;
        // If your SMTP server requires SSL connection on 465 port, please add this line
        // oServer.Port = 465;
        // oServer.ConnectType = SmtpConnectType.ConnectSSLAuto;
        // get a file path from PicturesLibrary, 
        // to access files in PicturesLibrary, you MUST have "Pictures Library" checked in
        // your project -> Package.appxmanifest -> Capabilities
        Windows.Storage.StorageFile file = 
            await Windows.Storage.KnownFolders.PicturesLibrary.GetFileAsync("test.jpg");
        string attfile = file.Path;
        Attachment oAttachment = await oMail.AddAttachmentAsync(attfile);
        // if you want to add attachment from remote URL instead of local file.
        // string attfile = "http://www.emailarchitect.net/test.jpg";
        // Attachment oAttachment = await oMail.AddAttachmentAsync(attfile);
        // you can change the Attachment name by
        // oAttachment.Name = "mytest.jpg";
        // If you want to send email with embedded picture
        // Specifies the attachment as an embedded picture
        // string contentID = "test001@host";
        // oAttachment.ContentID = contentID;
        // oMail.HtmlBody = "<html><body>this is an <img src=\"cid:" + contentID + "\"> embedded picture.</body></html>";        
        
        await oSmtp.SendMailAsync(oServer, oMail);
        Result = "Email was sent successfully!";
    }
    catch (Exception ep)
    {
        Result = String.Format("Failed to send email with the following error: {0}", ep.Message);
    }
    // Display Result by Diaglog box
    Windows.UI.Popups.MessageDialog dlg = new
        Windows.UI.Popups.MessageDialog(Result);
           
    await dlg.ShowAsync();
}
[VB - Send Email with Attachment from Windows Store Apps - XAML]
Imports EASendMail
Imports Windows.Storage
Private Async Function SendEmail() As Task
    Dim Result As String = ""
    Try
        Dim oMail As New SmtpMail("TryIt")
        Dim oSmtp As New SmtpClient()
        ' Set sender email address, please change it to yours
        oMail.From = New MailAddress("test@emailarchitect.net")
        ' Add recipient email address, please change it to yours
        oMail.To.Add(New MailAddress("support@emailarchitect.net"))
       ' Set email subject
        oMail.Subject = "test email from VB XAML project"
        ' Set email body
        oMail.TextBody = "this is a test email with attachment sent from Windows Store App, do not reply"
        ' Your SMTP server address
        Dim oServer As New SmtpServer("smtp.emailarchitect.net")
        ' User and password for ESMTP authentication            
        oServer.User = "test@emailarchitect.net"
        oServer.Password = "testpassword"
        ' If your SMTP server requires TLS connection on 25 port, please add this line
        ' oServer.ConnectType = SmtpConnectType.ConnectSSLAuto
        ' If your SMTP server requires SSL connection on 465 port, please add this line
        ' oServer.Port = 465
        ' oServer.ConnectType = SmtpConnectType.ConnectSSLAuto
        ' get a file path from PicturesLibrary, 
        ' to access files in PicturesLibrary, you MUST have "Pictures Library" checked in
        ' your project -> Package.appxmanifest -> Capabilities
        Dim file As Windows.Storage.StorageFile = 
            Await Windows.Storage.KnownFolders.PicturesLibrary.GetFileAsync("test.jpg")
        Dim attfile As String = file.Path
        Dim oAttachment As Attachment = Await oMail.AddAttachmentAsync(attfile)
        ' if you want to add attachment from remote URL instead of local file.
        ' Dim attfile As String = "http://www.emailarchitect.net/test.jpg"
        ' Dim oAttachment As Attachment = Await oMail.AddAttachmentAsync(attfile)
        ' you can change the Attachment name by
        ' oAttachment.Name = "mytest.jpg"
        ' If you want to send email with embedded picture
        ' Specifies the attachment as an embedded picture
        ' Dim contentID As String = "test001@host"
        ' oAttachment.ContentID = contentID
        ' oMail.HtmlBody = "<html><body>this is an <img src=""cid:" + contentID + """> embedded picture.</body></html>"        
        
        Await oSmtp.SendMailAsync(oServer, oMail)
        Result = "Email was sent successfully!"
    Catch ep As Exception
        Result = String.Format("Failed to send email with the following error: {0}", ep.Message)
    End Try
    ' Display Result by Diaglog box
    Dim dlg As New Windows.UI.Popups.MessageDialog(Result)
    Await dlg.ShowAsync()
End Function
[JavaScript - Send Email with Attachment from Windows Store Apps - HTML5]
function prepareMail() {
    var result = "";
    var oMail = new EASendMail.SmtpMail("TryIt");
    // Set sender email address, please change it to yours 
    oMail.from = new EASendMail.MailAddress("test@emailarchitect.net");
    // Add recipient email address, please change it to yours
    oMail.to.add(new EASendMail.MailAddress("support@emailarchitect.net"));
    // Set email subject
    oMail.subject = "test email from JavaScript HTML5 project";
    // Set email body
    oMail.textBody = "this is a test email with attachment sent from Windows Store App, do not reply";
    // get a file path from PicturesLibrary, 
    // to access files in PicturesLibrary, you MUST have "Pictures Library" checked in
    // your project -> Package.appxmanifest -> Capabilities
    Windows.Storage.KnownFolders.picturesLibrary.getFileAsync("test.jpg").then(function (file) {
        var attfile = file.path;
        // if you want to add attachment from remote URL instead of local file.
        // var attfile = "http://www.emailarchitect.net/test.jpg";
 
        oMail.addAttachmentAsync(attfile).then(function (oAttachment) {
            // you can change the Attachment name by
            // oAttachment.name = "mytest.jpg";
            // If you want to send email with embedded picture
            // Specifies the attachment as an embedded picture
            // var contentID = "test001@host";
            // oAttachment.contentID = contentID;
            //oMail.htmlBody = "<html><body>this is an <img src=\"cid:" + contentID + "\"> embedded picture.</body></html>";
            
            sendMailEx(oMail);
        },
        // error handle
        function (e) {
            // because javascript exception only gives the stack trace messages, but it is not
            // real description of exception, so we give a property lastErrorMessage for javascript.
            if (oMail.lastErrorMessage != "") {
                result = oMail.lastErrorMessage;
            }
            else {
                result = e.message;
            }
            (new Windows.UI.Popups.MessageDialog(result, "Error Information")).showAsync();
            return;
        });
    },
    // error handle
    function (e) {
        result = e.message;
        (new Windows.UI.Popups.MessageDialog(result, "Error Information")).showAsync();
        return;
    });
}
function sendMailEx( oMail )
{
    var result = "";
    var oSmtp = new EASendMail.SmtpClient();
    // Your SMTP server address
    var oServer = new EASendMail.SmtpServer("smtp.emailarchitect.net");
    // User and password for ESMTP authentication   
    oServer.user = "test@emailarchitect.net";
    oServer.password = "testpassword";
    // If your SMTP server requires TLS connection on 25 port, please add this line
    // oServer.connectType = EASendMail.SmtpConnectType.connectSSLAuto;
    // If your SMTP server requires SSL connection on 465 port, please add this line
    // oServer.port = 465;
    // oServer.connectType = EASendMail.SmtpConnectType.connectSSLAuto;
    oSmtp.sendMailAsync(oServer, oMail).then(function (e) {
        result = "Email was sent successfully!";
        // Display Result by Diaglog box
        (new Windows.UI.Popups.MessageDialog(result, "Success")).showAsync();
    },
    function (e) {
        // because javascript exception only gives the stack trace messages, but it is not
        // real description of exception, so we give a property lastErrorMessage for javascript.
        if (oSmtp.lastErrorMessage != "") {
            result = oSmtp.lastErrorMessage;
        }
        else {
            result = e.message;
        }
        oSmtp.close();
        // Display Result by Diaglog box
        (new Windows.UI.Popups.MessageDialog(result, "Error Information")).showAsync();
    });
}
    See Also
        SmtpMail.AddAttachment Method
        SmtpMail.ImportHtmlBodyAsync Method
        SmtpMail.ImportHtmlAsync Method
        Attachment Class