Outlook Calendar invite - Not able to send from exchange server. RRS feed

  • General discussion

  • Hi,

       I am not able to send outlook calendar invite from exchange server. But if i installed outlook on my local machine/server it works fine. Below code the i used to build calendar invite for your reference.

      public static void sendOutlookInvitationViaICSFile1(EAppointmentMail objApptEmail)

                    log.Info("Invite Started");

                    Microsoft.Office.Interop.Outlook.Application apptApp = new Microsoft.Office.Interop.Outlook.Application();
                    Microsoft.Office.Interop.Outlook.AppointmentItem agendaMeeting = apptApp.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olAppointmentItem);

                    DateTime venueDate = Convert.ToDateTime(objApptEmail.VenueDate);
                    string formatedVenueDate = venueDate.Year.ToString() + "/" + venueDate.Month.ToString() + "/" + venueDate.Day.ToString();
                    DateTime from = Convert.ToDateTime(formatedVenueDate + " " + objApptEmail.FromTime);
                    DateTime to = Convert.ToDateTime(formatedVenueDate + " " + objApptEmail.ToTime);
                    System.Net.Mime.ContentType typeHTML = new System.Net.Mime.ContentType("text/html");
                    //Create the Body in HTML format

                    string strBodyText = "Type:Single Meeting\r\nOrganizer: {0}\r\nStart Time:{1}\r\nEnd Time:{2}\r\nTime Zone:{3}\r\nLocation: {4}\r\n\r\n\r\n\r\n{5}";
                    strBodyText = string.Format(strBodyText, objApptEmail.Email, from.ToLongDateString() + " " + from.ToLongTimeString(),
                                        to + " " + to, System.TimeZone.CurrentTimeZone.StandardName,
                                        objApptEmail.Location, objApptEmail.Body);

                    if (agendaMeeting != null)
                        agendaMeeting.MeetingStatus =
                        agendaMeeting.Location = objApptEmail.Location;
                        agendaMeeting.Subject = objApptEmail.Subject;
                        agendaMeeting.Body = strBodyText;
                        agendaMeeting.Start = from;
                        agendaMeeting.End = to;
                        Microsoft.Office.Interop.Outlook.Recipient recipient = agendaMeeting.Recipients.Add(objApptEmail.Email);

                        recipient.Type = (int)Microsoft.Office.Interop.Outlook.OlMeetingRecipientType.olRequired;
                        log.Info("Invite Successfully End");
                catch (Exception ex)
                    log.Info("Error: " + ex.Message.ToString());
                    Console.WriteLine("Error: " + ex.Message.ToString());


    In exchange server/ not outlook installed server, i am getting below error.

    "Retrieving the COM class factory for component with CLSID {0006F03A-0000-0000-C000-000000000046} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))"

    Help me to send calendar invite without installing outlook on the specified server. Please do the needful.

    Tuesday, September 9, 2014 8:39 AM

All replies

  • Hi

    It is probably that the stuff you doing is for outlook and because outlook is not installed it cannot find the classes.

    Hope this helps. Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.

    Tuesday, September 9, 2014 12:36 PM