How to: Create a Mail Item, Attach a Report, and Send the Mail Item to the User's Manager

This example creates a mail item that has an attachment, and then sends the mail item to the user's manager.

This example runs correctly only against a Microsoft Exchange Server account. A manager relationship for users must be established in the Active Directory directory service. The example uses the ExchangeUser object to determine the current user's manager by calling the GetExchangeUserManager method.

If you use Microsoft Visual Studio to test this code example, you must first add a reference to the Microsoft Outlook 14.0 Object Library component and specify the Outlook variable when you import the Microsoft.Office.Interop.Outlook namespace. The Imports or using statement must not occur directly before the functions in the code example but must be added before the public Class declaration. The following lines of code show how to do the import and assignment in Visual Basic and C#.

using Outlook = Microsoft.Office.Interop.Outlook;
private void SendSalesReport()
    Outlook.MailItem mail = Application.CreateItem(
        Outlook.OlItemType.olMailItem) as Outlook.MailItem;
    mail.Subject = "Quarterly Sales Report FY06 Q4";
    Outlook.AddressEntry currentUser =
    if (currentUser.Type == "EX")
        Outlook.ExchangeUser manager =
        // Add recipient using display name, alias, or smtp address
        mail.Attachments.Add(@"c:\sales reports\fy06q4.xlsx",
            Outlook.OlAttachmentType.olByValue, Type.Missing,

Other Resources