Skip to main content


Showing posts from May, 2014

eDiscovery script for reporting on large items in a Mailbox

When it comes to searching a Mailbox with EWS with a Script, eDiscovery on Exchange 2013 makes things a lot easier and faster by basically allowing a Mailbox (and Archive) wide search rather then a folder by folder crawl which you had to do with AQS on Exchange 2010. I posted a paging sample a few months back to show how you can page through the results of a eDiscovery using the EWS Managed API. The following script is an application of this to produce a report of Items that are larger then a certain size in the Mailbox and Archive. To give the Folder path of the folder where the items are located the script grabs the FolderPaths and produces a report like To run a discovery just feed it the Mailbox you want to run it against, and to set the size of the Items you want to find you can modify the following variable that holds the KQL query (the following finds items larger then 10 MB) $KQL = "size>10485760"  I've put a download of this script here t

GPX Route Mail App for Exchange 2013 and Exchange Online

As part of my MEC talk last month I presented a Mail App that would show a Map with route layer added based on the content of a GPX attachment on a received message. For example here's a screenshot of the Application that was activated from a GPX file that was exported from the  Google Tracks application . Mail Apps are a new feature of Exchange2013/Exchange Online that gives you a standard way of extending the functionality of Outlook,OWA and OWA for devices. The way this particular Mail app works is first, in the Manifest file there is a filter so it will only show on messages you open/view that have an attachment eg < Rule  xsi: type = "RuleCollection"   Mode = "And" >         < Rule  xsi: type = "ItemIs"   FormType  =  "Read"   ItemType = "Message"   />         < Rule  xsi: type = "ItemHasAttachment"   />    </ Rule >    Next if somebody activates the application the next
All sample scripts and source code is provided by for illustrative purposes only. All examples are untested in different environments and therefore, I cannot guarantee or imply reliability, serviceability, or function of these programs.

All code contained herein is provided to you "AS IS" without any warranties of any kind. The implied warranties of non-infringement, merchantability and fitness for a particular purpose are expressly disclaimed.