2

我正在尝试让我的应用程序打开带有一些预填充字段的 Outlook 会议窗口。

我发现这个问题已经在这里问过了。但是,答案中提供的代码(工作正常)不会打开会议窗口,而是打开约会窗口。这是两个在 Outlook 中处理方式不同的不同事物,而我需要的确实是会议窗口。

有什么办法可以做到这一点,还是我必须先打开约会窗口,然后邀请人们把它变成会议?

4

2 回答 2

1

就像在另一个问题中一样创建约会,但然后设置MeetingStatus约会的属性。

Microsoft.Office.Interop.Outlook.Application outlookApplication = new Microsoft.Office.Interop.Outlook.Application(); ;
Microsoft.Office.Interop.Outlook.AppointmentItem appointmentItem = (Microsoft.Office.Interop.Outlook.AppointmentItem)outlookApplication.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olAppointmentItem);

// This line was added    
appointmentItem.MeetingStatus = Microsoft.Office.Interop.Outlook.OlMeetingStatus.olMeeting;

appointmentItem.Subject = "Meeting Subject";
appointmentItem.Body = "The body of the meeting";
appointmentItem.Location = "Room #1";
appointmentItem.Start = DateTime.Now;
appointmentItem.Recipients.Add("test@test.com");
appointmentItem.End = DateTime.Now.AddHours(1);
appointmentItem.ReminderSet = true;
appointmentItem.ReminderMinutesBeforeStart = 15;
appointmentItem.Importance = Microsoft.Office.Interop.Outlook.OlImportance.olImportanceHigh;
appointmentItem.BusyStatus = Microsoft.Office.Interop.Outlook.OlBusyStatus.olBusy;
appointmentItem.Recipients.ResolveAll();
appointmentItem.Display(true);
于 2017-03-08T16:23:16.880 回答
0

对 NineBerries 好的解决方案的另一个说明,因为我在这里遇到了一个问题:

线

appointmentItem.Recipients.ResolveAll();

如果您在会议中有可选的与会者,则此选项是必需的。否则,即使您设置了,它们也会被重置为“必需”

recipient.Type = Microsoft.Office.Interop.Outlook.OlMeetingRecipientType.olOptional;

之前,这是由于 Outlook 中名称的“后期自动解析”(或者看起来如此)。

于 2020-12-31T03:34:53.473 回答