In this tech tip, I want to talk about one of Microsoft’s automated tools that you can use to help check for and {sometimes} to resolve issues with Exchange-based calendars. This applies to both on-premise Exchange as well as to Office 365. The utility is called CalCheck, and it was most recently updated back in July of 2014.
Available for download directly from Microsoft [HERE]; it will install and run on everything from Windows XP SP3 all the way through Windows 8.1. There are several ways and options with which to run the tool, but for the purposes of the article I’m only going to cover two of them.
The first, “read only,” will process whatever mailbox you point it at, outputting the log and error files to the directory in which CalCheck is running from.
1. Open a command prompt in the CalCheck directory. In my case, this is in my Downloads\CalCheck_x86 folder. Type calcheck
and press Enter. It will prompt you for the profile that you want to check. (It’s important to note that you will need an Outlook profile on your machine for the mailbox you want to check, unless you know the LegacyExchangeDN for that mailbox.) Choose the profile, and click OK. The program will proceed to check the calendar, and will notify you in the command prompt when it’s finished.
2. Same as the first (except we’ll be adding a flag), type calcheck -F
into the command prompt. You will be asked again for which profile you want and the program will proceed as it did in “read only” mode. The notable exception is that for any problematic items it finds, it will create a folder in the Inbox called CalCheck and move them into that folder. See the screenshot below for a calendar I ran this on that should have only had about 1,400 items total… CalCheck found over 100,000! It took close to 3 hours to process and clean out the entire calendar!
The README file in the CalCheck download will provide much better detail on the other options available to you when running this utility, but this post should give you a good starting point if you find yourself dealing with a problematic calendar where you’re unable to pin down a specific issue.