Is it possible to open an Outlook appointment window from an asp.net control?

Posted on 2011-03-17
Medium Priority
Last Modified: 2012-05-11
I'd like to open an Outlook appointment window from an asp.net control (say a button or a linkbutton or something, it doesn't really matter). I don't want to send the appointment, just open it with a string of text placed in the text part of the window. Once it was opened displaying the necessary text users would then treat the appointment exactly as they would a manually created one. I'm using Visual Studio 2010 / Outlook 2007 / Outlook 2010 / Exchange 2010.
Thanks in advance,

Question by:louise001
  • 4
  • 4
LVL 10

Assisted Solution

by:John Claes
John Claes earned 2000 total points
ID: 35155752
I Would suggest looking the follwing urls

Google using ".NEt create outlook appointment"

What you have to do is to create the Object and stream it to the User.
This is the example I used (Quoted from this site: http://www.outlookcode.com/codedetail.aspx?id=775 )

//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:
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 ();

Open in new window


Author Comment

ID: 35156687
Thanks, I am reading ...
LVL 10

Expert Comment

by:John Claes
ID: 35165989

does it work for you ?
Easily manage email signatures in Office 365

Managing email signatures in Office 365 can be a challenging task if you don't have the right tool. CodeTwo Email Signatures for Office 365 will help you implement a unified email signature look, no matter what email client is used by users. Test it for free!


Accepted Solution

louise001 earned 0 total points
ID: 35176079
Hello again,
Whenever I try to instantiate a New Microsoft.Office.Interop.Outlook.Application I'm repeatedly getting this error or similar:
Retrieving the COM class factory for component with CLSID {0006F03A-0000-0000-C000-000000000046} failed due to the following error: 80010001 Call was rejected by callee. (Exception from HRESULT: 0x80010001 (RPC_E_CALL_REJECTED)).

I'm wondering if it's something to do with accounts under which Internet Explorer and Outlook run or some other permissions issue. In the end I found this solution which works perfectly for my requirements: http://msdn.microsoft.com/en-us/library/bb655909%28office.12%29.aspx.

I'll award you the points as you pointed me in the right direction.

Author Comment

ID: 35176102
My mistake, I intended to mark expert comment and my own comment as answers and award points to expert. Could you please cancel so I can do that? Thanks.
LVL 10

Expert Comment

by:John Claes
ID: 35178957
please read the commont ;-)
LVL 10

Expert Comment

by:John Claes
ID: 35178958
please read the comment ;-)

Author Closing Comment

ID: 35230033
poor_beggar, thanks for your help.

Featured Post

The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Office 365 has multiple features and services which are specially designed to help businesses to reduce their dependence on on-premises IT resources. It also offers great flexibility and enhanced security. But like any other data, Office 365 mailbo…
Organisation is organized in a pattern to flow the day to day business, every application and system is interdepended on each other and when very important “Exchange Server downtime” happened.
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …
Many of my clients call in with monstrous Gmail overloading issues with Outlook. A quick tip is to turn off the All Mail and Important folders from synching. Here is a quick video I made to show you how to turn off these and other folders in Gmail s…

627 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question