Search code examples
c#.netexchange-serverexchangewebservicesattachment

C# Exchange EmailMessage Send: As soon as I add an attachement, I get error "No mailbox with such guid"


In my application I use some code to send automated mails over our Exchange server.

My current goal is to send a HTML mail with some pictures as a handout. That pictures shall be attachments of the mail.

To this point the code is working (I have changes internal names in the code example):

ExchangeService MailClient = new ExchangeService
{
    UseDefaultCredentials = true,
    Url = new Uri("https://<domain.of.company>/EWS/Exchange.asmx")
};

EmailMessage msg = new EmailMessage(MailClient);

msg.ToRecipients.Add(new EmailAddress(user.EmailAddress));

msg.Sender = new EmailAddress("[email protected]");

msg.Subject = "Some text here";

MessageBody Body = new MessageBody
{
    BodyType = BodyType.HTML,
    Text = NameOfApplication.Properties.Resources.Embedded_HTML_File
};

msg.Body = Body;

msg.SendAndSaveCopy(new FolderId(WellKnownFolderName.SentItems, "[email protected]")));

With this code the E-Mail get saved in the "Sent" folder and arrives the target mailbox. Success so far.

But as soon I add an attachement by this (no other changes were made)

msg.Attachments.AddFileAttachment(AppContext.BaseDirectory + "Logo.jpg");

SendAndSaveCopy throws an exception with the description "No mailbox with such guid."

When I comment out the AddFileAttachment line the code is working again.

Any idea whats wrong with attachments?


Solution

  • Found the solution. Reading tooltips might help.

    Screenshot of the tooltip with the solution

    Maybe the day will come, when Microsoft will change SendAndSaveCopy to include this step.

    But yes: The error message is misleading.