2009-12-23 25 views
5

Estoy tratando de crear una cita en el calendario de Microsoft Outlook (2003) de otra persona usando el siguiente código. Mientras ejecuto este programa, la Cita se guarda en mi calendario. Pero no se envía al destinatario.¿Cómo creo y envío citas al calendario de Microsoft Outlook?

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("[email protected]"); 
    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()); 
} 

Am i missing anything? ¿Alguien puede ayudarme a resolver este problema?

Respuesta

3

Trate de añadir:

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

estado por defecto es una cita a la que no estoy seguro de que se está enviando.

5

Después de tener la cita:

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

Aquí es cómo me fijo este problema:

pongo (como el post de Sonny Boy):

Pero también tuve que cree un archivo web.config y configure el acceso de autorización para evitar cualquier excepción COM:

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