C# 如何创建约会并将其发送到Microsoft Outlook日历?

C# 如何创建约会并将其发送到Microsoft Outlook日历?,c#,.net,automation,outlook-2003,C#,.net,Automation,Outlook 2003,我正在尝试使用以下代码在Microsoft Outlook(2003)日历中为另一个人创建约会。运行此程序时,约会将保存在我的日历中,但不会发送给收件人 try { Microsoft.Office.Interop.Outlook.Application app = null; Microsoft.Office.Interop.Outlook.AppointmentItem appt = null; app = new Microsoft.Office.Interop.

我正在尝试使用以下代码在Microsoft Outlook(2003)日历中为另一个人创建约会。运行此程序时,约会将保存在我的日历中,但不会发送给收件人

try
{
    Microsoft.Office.Interop.Outlook.Application app = null;
    Microsoft.Office.Interop.Outlook.AppointmentItem appt = null;

    app = new Microsoft.Office.Interop.Outlook.Application();

    appt = (Microsoft.Office.Interop.Outlook.AppointmentItem)app
        .CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olAppointmentItem);
    appt.Subject = "Meeting ";
    appt.Body = "Test Appointment body";
    appt.Location = "TBD";
    appt.Start = Convert.ToDateTime("12/23/2009 05:00:00 PM");
    appt.Recipients.Add("smuthumari@mycompany.com");
    appt.End = Convert.ToDateTime("12/23/2009 6:00:00 PM");
    appt.ReminderSet = true;
    appt.ReminderMinutesBeforeStart = 15;
    appt.Importance = Microsoft.Office.Interop.Outlook.OlImportance.olImportanceHigh;
    appt.BusyStatus = Microsoft.Office.Interop.Outlook.OlBusyStatus.olBusy;
    appt.Save();
    appt.Send();
}
catch (COMException ex)
{
    Response.Write(ex.ToString());
}
我遗漏了什么吗?有人能帮我解决这个问题吗?

尝试添加:

appt.MeetingStatus = Microsoft.Office.Interop.Outlook.OlMeetingStatus.olMeeting;

默认状态是一个我不确定是否发送的约会。

完成约会后:

Outlook.MailItem mailItem = appt.ForwardAsVcal();
mailItem.To = "recipient's email address";
mailItem.Send();

以下是我如何解决此问题的:

我写了(就像桑尼男孩的帖子):

但我还必须创建一个web.config文件,并设置授权访问以避免任何COMException:

<system.web>
  <authorization>
    <deny users="?"/>
  </authorization>
</system.web>

<system.web>
  <authorization>
    <deny users="?"/>
  </authorization>
</system.web>