Automatisches Annehmen einer Besprechungsanfrage
Dieses Beispiel verwendet die Respond(OlMeetingResponse, Object, Object)-Methode, um eine Besprechungsanfrage automatisch anzunehmen.
Beispiel
Hinweis
Das folgende Codebeispiel ist ein Auszug aus Programming Applications für Microsoft Office Outlook 2007.
Ein MeetingItem-Objekt stellt eine Anfrage zum Hinzufügen eines Termins, dargestellt durch ein AppointmentItem-Objekt, zum Kalender eines Empfängers dar. In diesem Beispiel wird gezeigt, wie die GetAssociatedAppointment(Boolean)-Methode verwendet wird, um den AppointmentItem abzurufen, der einer Besprechungsanfrage zugeordnet ist. Verwenden Sie dann die Respond(OlMeetingResponse, Object, Object)-Methode des AppointmentItem-Elements zum Benachrichtigen des Besprechungsorganisators darüber, ob die Besprechung zum Kalender des Empfängers als "Angenommen", "Abgelehnt" oder "Mit Vorbehalt" hinzugefügt wurde. Die Respond-Methode akzeptiert drei Parameter.
Der Response-Parameter gibt an, ob die Antwort "Angenommen", "Abgelehnt" oder "Mit Vorbehalt" lautet. Die Parameter fNoUI und fAdditionalTextDialog sind bool-Werte, die bestimmen, ob die Antwort gesendet wird und ob der Benutzer die Antwort bearbeitet hat. Im folgenden Codebeispiel wird von AutoAcceptMeetingRequests jedes MeetingItem-Objekt aufgeführt, um die verknüpften AppointmentItem-Elemente abzurufen. AutoAcceptMeetingRequests verwendet dann die Respond-Methode mit dem auf true festgelegten fNoUI-Parameter, um anzuzeigen, dass die Antwort automatisch gesendet wird, um die Besprechungsanfrage anzunehmen.
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 using-Anweisung darf im Codebeispiel nicht direkt vor den Funktionen stehen, sondern muss vor der öffentlichen Class-Deklaration hinzugefügt werden. Die folgende Codezeile zeigt, wie Sie den Import und die Zuweisung in C# vornehmen.
using Outlook = Microsoft.Office.Interop.Outlook;
private void AutoAcceptMeetingRequests()
{
Outlook.MeetingItem mtgResponse;
Outlook.Folder folder = Application.Session.
GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox)
as Outlook.Folder;
string filter = "[MessageClass] = " +
"'IPM.Schedule.Meeting.Request'";
Outlook.Items items = folder.Items.Restrict(filter);
foreach (Outlook.MeetingItem request in items)
{
Outlook.AppointmentItem appt =
request.GetAssociatedAppointment(true);
if (appt != null)
{
mtgResponse = appt.Respond(
Outlook.OlMeetingResponse.olMeetingAccepted,
true, Type.Missing);
mtgResponse.Send();
}
}
}