Me: I live in Silicon Valley with my wife, child and cat. I have worked at Microsoft since I graduated from College, both in the Macintosh Business Unit on products such as Outlook Express, Entourage, IE, and Virtual PC and in Windows Live on Hotmail, Calendar and People. I am currently a Principal Lead Program Manager on the Windows Live Social Networking team. I basically manage a team of Program Managers responsible for delivering features to support our web and client applications. I've been blogging since 2001 and like to play around with .NET in my spare time working on projects such as dasBlog (the blog that powers this site) and Send to SmugMug (an application for uploading photos to SmugMug). I blog about a number of technology and productivity related topics.
Powered by: newtelligence dasBlog 2.3.9074.18820
Disclaimer The posts on this weblog are provided "AS IS" with no warranties, and confer no rights. The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.
© Copyright 2010, Omar Shahine
E-mail
99% of the appointments on my calendar say "Updated: <original appointment name>". I don't find this particularly useful, especially when I look at my calendar on a small screen like the Treo 650, or even smaller Windows Mobile Device. Half the time I have no idea what was Updated anyway, and I just blindly accept the meeting request.
In fact, most meetings go like this:
If you are lucky enough to get to Step 3, you will often find that Outlook will display a message that says "Object moved" when you try and delete, accept or do anything with the third meeting request. I have no idea why.
Anyway, to make the calendar more useful, i wrote a little command line app that will simply remove "Updated: " and "FW: " from the beginning of any appointments on your calendar.
You can download it here, or in the RSS enclosure.
Usual disclaimer applies. This works on my machine, did not do bad, and I am not responsible for what it does on your machine. You must have the Outlook .NET Programability Installed for Outlook 2003.
The code looks like this:
static void Main(){ string[] prefixes = new string[] {"Updated: ", "FW: "}; try { Application application = new Application(); MAPIFolder calendar = application.GetNamespace("MAPI").GetDefaultFolder(OlDefaultFolders.olFolderCalendar); int counter = 0; foreach (object o in calendar.Items) { if (o is AppointmentItem) { AppointmentItem appointmentItem = (AppointmentItem)o; foreach (string s in prefixes) { if (appointmentItem.Subject.ToLower().StartsWith(s.ToLower())) { string currentSubject = appointmentItem.Subject; string cleanSubject = currentSubject.Remove(0, s.Length); appointmentItem.Subject = cleanSubject; appointmentItem.Save(); Console.WriteLine("subject: {0}", currentSubject); Console.WriteLine(" new subject: {0}", cleanSubject); counter++; } } } } Console.WriteLine("Cleaned {0} of {1} Appointments", counter, calendar.Items.Count); Console.WriteLine("Press any key to exit."); Console.ReadLine(); } catch (System.Exception ex) { Console.WriteLine(ex.Message); }}