Outlook behaviour when accessing data in a corrupt data file (.pst or .ost)

In Outlook 2010 and previous versions, when making a call to access data in an Outlook store, programmatic calls to access data would result in errors if the data file (.pst or .ost) was corrupt. Developers were thus able to handle the exceptions and continue the execution,   In Outlook 2013, this behaviour changed and…

0

Authenticating against Exchange Web Services using certificate based OAuth2 tokens

Overview This post contains step by step information on configuring your environment and authenticating against Exchange Web Services using certificate based OAuth2 tokens. The information in this blog post is only valid for connecting to Exchange Online mailboxes. Requirements In order to set up certificate based OAuth2 authentication you will require access to the Azure…

0

Acquiring OAuth2 access tokens for automating Exchange Management Shell cmdlets

Overview At present, there are no configurable permissions available for new Application Registrations in Azure Active Directory allowing to acquire OAuth2 tokens for automating Exchange Management Shell cmdlets. This work is currently being investigated by engineering and we hope to be in a position to provide such functionality in the future. That said, there is…

0

Troubleshooting EWS Applications using SOAPe

SOAPe is a tool that was developed primarily for testing and troubleshooting EWS, though can also support other web services.  It has a built-in EWS trace analyser that can assist in identifying issues and spotting errors. SOAPe is available from Github, and full source is published: https://github.com/David-Barrett-MS/SOAPe Analysing EWS Traces The EWS Managed API (also available…


Forwarding a message as an attachment using Graph or REST

There isn’t currently an easy way to forward a message as an attachment using REST, as the message: forward command does not have this option.  However, with the beta API, it is now possible to forward as attachment using the following technique.  Note that it is only possible to retrieve the MIME content of the…


Querying the Office 365 Management APIs using Postman

Overview This blog post demonstrates how to create an app registration in Azure Active Directory and how to use PostMan to test access and query the Office 365 Management Activity API and Office 365 Service Communications API. For troubleshooting information please visit the official page: Troubleshooting the Office 365 Management Activity API. Note: Service Communications…

0

Azure Daemon Application using EWS with OAuth

We’ve got a fair few samples for implementing a daemon application (one that requires no user interaction) using OAuth against Azure endpoints, but I couldn’t find a specific example for EWS.  This guide describes how to set up an application (register it in Azure) and then obtain the correct permissions to be able to run…


Transport Agent: Discard Mailbox-Full type of NDR

Hello folks, me again. It was some time I didn’t have the opportunity to blog about Transport Agents so I thought to write something about this. This week I have been working with a customer desiring to block specific types of Non-Delivery Reports. In the example, the idea is to block NDR’s such as the…

0

Outlook’s slow add-ins resiliency logic and how to always enable slow add-ins

Overview This post explains how to deploy registry settings that would force Outlook to always load a specific add-in. The information in this post only applies to slow (VSTO) add-ins in Outlook 2013 or higher.  If Outlook disables your add-in to prevent a crash, this blog post isn’t for you. Disclaimer Outlook natively allows add-ins…

7

Configuring and managing Outlook’s Autocomplete Cache

Overview Outlook cannot be configured for selective (criteria based) caching of entries in the autocomplete stream. In addition, individual entries cannot be removed by standard programmatic means. Individual entries can be removed manually using the Outlook client. More information The autocomplete stream is a set of recipient property rows that are saved as a binary…

0