我有几个Outlook日历。我希望能够创建一个事件并将其保存到每个日历中,而无需将其复制并粘贴到每个日历中。
任何想法,如果这是可能的/如何实现这一点?
答案 0 :(得分:0)
我假设你发布到SO而不是SU你需要一个程序化的解决方案。我对这个问题知之甚少,但希望这会让你开始。
以下是如何创建新约会(from OutlookCode.com)
//First thing you need to do is add a reference to Microsoft Outlook 11.0 Object Library. Then, create new instance of Outlook.Application object:
Outlook.Application outlookApp = new Outlook.Application ();
//Next, create an instance of AppointmentItem object and set the properties:
Outlook.AppointmentItem oAppointment = (Outlook.AppointmentItem) outlookApp.CreateItem (Outlook.OlItemType.olAppointmentItem);
oAppointment.Subject = "This is the subject for my appointment";
oAppointment.Body = "This is the body text for my appointment";
oAppointment.Location = "Appointment location";
// Set the start date
oAppointment.Start = Convert.ToDateTime ("10/10/2004 10:00:00 AM");
// End date
oAppointment.End = Convert.ToDateTime ("10/10/2004 2:00:00 PM");
// Set the reminder 15 minutes before start
oAppointment.ReminderSet = true;
oAppointment.ReminderMinutesBeforeStart = 15;
//Setting the sound file for a reminder:
set ReminderPlaySound = true
//set ReminderSoundFile to a filename.
//Setting the importance:
//use OlImportance enum to set the importance to low, medium or high
oAppointment.Importance = Outlook.OlImportance.olImportanceHigh;
/* OlBusyStatus is enum with following values:
olBusy
olFree
olOutOfOffice
olTentative
*/
oAppointment.BusyStatus = Outlook.OlBusyStatus.olBusy;
//Finally, save the appointment:
// Save the appointment
oAppointment.Save ();
// When you call the Save () method, the appointment is saved in Outlook. Another useful method is ForwardAsVcal () which can be used to send the Vcs file via email.
Outlook.MailItem mailItem = oAppointment.ForwardAsVcal ();
mailItem.To = "recipients email address";
mailItem.Send ();
要获得对日历的引用,您需要以下内容:
Outlook.MAPIFolder MyCalendar = Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar);