Erstellen eines E-Mail-Elements, Anfügen eines Berichts und Senden des E-Mail-Elements an den Vorgesetzten des Benutzers
In diesem Beispiel wird ein E-Mail-Element mit einer Anlage erstellt und dann an den Vorgesetzten des Benutzers gesendet.
Beispiel
Dieses Beispiel kann nur mit einem Microsoft Exchange Server-Konto ordnungsgemäß ausgeführt werden. Im Active Directory-Verzeichnisdienst muss eine Vorgesetztenbeziehung für Benutzer eingerichtet werden. Im Beispiel wird das ExchangeUser-Objekt verwendet, um den Manager des aktuellen Benutzers zu bestimmen, indem die GetExchangeUserManager-Methode aufgerufen wird.
Wenn Sie Visual Studio verwenden, um dieses Codebeispiel zu testen, müssen Sie der Microsoft Outlook 15.0-Objektbibliothekkomponente zuerst einen Verweis hinzufügen und die Outlook-Variable angeben, wenn Sie den Microsoft.Office.Interop.Outlook-Namespace importieren. Die Anweisung Imports oder using darf im Codebeispiel nicht direkt vor den Funktionen stehen, sondern muss vor der öffentlichen Class-Deklaration hinzugefügt werden. Die folgenden Codezeilen zeigen, wie Sie den Import und die Zuweisung in Visual Basic und C# vornehmen.
Imports Outlook = Microsoft.Office.Interop.Outlook
using Outlook = Microsoft.Office.Interop.Outlook;
Private Sub SendSalesReport()
Dim mail As Outlook.MailItem = CType(Application.CreateItem( _
Outlook.OlItemType.olMailItem), Outlook.MailItem)
mail.Subject = "Quarterly Sales Report FY06 Q4"
Dim currentUser As Outlook.AddressEntry = _
Application.Session.CurrentUser.AddressEntry
If currentUser.Type = "EX" Then
Dim manager As Outlook.ExchangeUser = _
currentUser.GetExchangeUser().GetExchangeUserManager()
' Add recipient using display name, alias, or smtp address
mail.Recipients.Add(manager.PrimarySmtpAddress)
mail.Recipients.ResolveAll()
mail.Attachments.Add("c:\sales reports\fy06q4.xlsx", _
Outlook.OlAttachmentType.olByValue)
mail.Send()
End If
End Sub
private void SendSalesReport()
{
Outlook.MailItem mail = Application.CreateItem(
Outlook.OlItemType.olMailItem) as Outlook.MailItem;
mail.Subject = "Quarterly Sales Report FY06 Q4";
Outlook.AddressEntry currentUser =
Application.Session.CurrentUser.AddressEntry;
if (currentUser.Type == "EX")
{
Outlook.ExchangeUser manager =
currentUser.GetExchangeUser().GetExchangeUserManager();
// Add recipient using display name, alias, or smtp address
mail.Recipients.Add(manager.PrimarySmtpAddress);
mail.Recipients.ResolveAll();
mail.Attachments.Add(@"c:\sales reports\fy06q4.xlsx",
Outlook.OlAttachmentType.olByValue, Type.Missing,
Type.Missing);
mail.Send();
}
}