The CalCheck Tool for Microsoft Outlook

This free tool helps you discover errors with Microsoft Outlook calendar items that can create a range of problems for your Exchange Server environment.

Paul Robichaux

February 23, 2012

3 Min Read
ITPro Today logo

I'm a big fan of using automated tools to check for problems rather than waiting for problems to show up in the form of user complaints, event logerrors, or even system or component failures. That's why I was thrilled when Microsoft released the Exchange Server Best Practices Analyzer (ExBPA),which in turn was a distant relative of the Microsoft Exchange Server 2003 deployment analysis tools. Now Microsoft has released an updated version ofa tool few of us have heard of: CalCheck, more formally known as the Calendar Checking Tool for Outlook.

You can download the new version of CalCheck from the Microsoft Download Center. CalCheckdoes exactly what its name suggests: It looks through one or more Exchange mailboxes, examining each for a set of potential problems with calendaritems. You might not have thought of calendar items as a potential source of problems, but the truth is that meetings and appointments are actuallycomplex little beasts.

Calendar items have lots of limits and constraints that are supposed to be applied as they're created and manipulated. Some of these details areobvious; for example, you can't have a calendar item with an end date before its start date. Others problems are less obvious. Did you know that asingle calendar folder can't contain more than 1,300 recurring items? I sure didn't. Violating these constraints, or creating items that are missingdata that Exchange expects, can lead to various problems, including incorrect or missing free/busy data, client crashes, or problems accessing otherunrelated calendar items.

Exchange has a great deal of built-in calendar-related business logic; this code is supposed to prevent bad items from being created in the firstplace. In that light, you might be wondering how calendar items get into a state that requires repair in the first place. The answer is simple: bugs.Bugs in the business logic itself can allow clients to create bad items, or to modify good items in a bad way. Client bugs can cause problems too.Apple users are well aware of the many bugs that Apple's own calendaring applications for Mac OS X and iOS have inflicted on Exchange users over theyears, and BlackBerry, Android, Windows Phone, and Windows Mobile all have their own set of calendar-related bugs. So does Outlook.

I'd venture a guess that the most common cause of calendar problems is a lack of business logic for certain conditions. For instance, one of the thingsthat CalCheck can look for is a meeting that doesn't have an email address for the meeting organizer. Creating such a meeting clearly isn't areasonable thing to do, so why would Exchange have included business logic to check for this state and generate an error? Therefore, some versions ofExchange didn't bother to block this circumstance.

CalCheck actually performs two sets of tests: It checks permissions, delegates, and direct booking settings on the calendar folder itself; then itchecks a dozen or so aspects of every item inside the calendar folder. The Microsoft article "Information about the Calendar Checking Tool for Outlook(CalCheck)" describes the complete list of tests. You can run CalCheck against a single mailbox or a set ofmailboxes, and you can have it either generate a report of its findings or create a new folder into which it moves problem items for manual inspection(and removal, if necessary.)

Perhaps my favorite thing about CalCheck is that its source code is freely available on Microsoft's CodePlex. This openness provides a great learning opportunity for those who are interested in the innerworkings of Exchange calendaring, and I applaud CalCheck's author, and Microsoft, for doing it this way.

Read more about:

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like