About: VSTO for Outlook

API Type:  UI Customization API Interface: .NET Business Logic: Adds features to the Outlook UI and to Outlook processing. Development Languages: .NET, OOM. Property Access: Yes Product Versions: Visual Studio 2005 and later, Office 2003 and later. Summary: Outlook VSTO add-in development allows you to write add-inapplications which will run in Outlook from Office. Points…

0

Building messaging applications with “Any CPU”

When building pure .NET applications doing builds using Any CPU usually go pretty smoothly. Even when mixing in some COM objects things usually go well. However, developers often run into issues with .NET code using COM objects then deploying their applications to other computers where the bitness of their development box OS does not match…

0

Sample: Use JavaScript with OOM to create an email with an attachment and display it in Outlook for sending.

This sample shows how OOM can be used with JavaScript from the command line. Use cscript to launch it – this will cause the script to write the output to the command window.   // Use this command line:  cscript test.js function test() { WScript.Echo(‘Start ————-‘); try { var outlook = new ActiveXObject(‘Outlook.Application’); var email = outlook.CreateItem(0);…

0

About: Encrypting or signing a message programmatically

We get cases on encrypting email from time to time.   With Microsoft messaging APIs, sending an encrypted or signed message is not just  matter of flipping flag or pointing to a certificate.  The easiest is going to be using Outlook Object Model (OOM);  however, because of its user tied usage it cannot be used in a…

0

About: Mailbox event and Notification APIs

One with developing code for messaging development is to have code run when a specific event happens.  Each mailbox API has its own ways of handling calls.  Below is an overview of APIs which support events on the mailbox. Exchange Web Services (EWS): Exchange Web Service notifications are widely used and has several models for…

2

Why does AppointmentItem.UserProperties.Find leak under .NET?

If you have used COM under .NET then you are probably familiar with leaking memory under .NET and the need to call ReleaseComObject in order to release underlying COM objects which are referenced by .NET code. I ran into an issue where a customer was running into a leak  with the call below: oUserProperty = oAppointmentItem.UserProperties.Find(“MyDreams”,…

1

Code running against Outlook is very slow when PST or OST is on a network folder or non-physical/non-VHD drive.

There is no support for performance issues with Outlook where the PST or OST are on a network folder or non-physical/non-VHD drive.  See below: Limits to using personal folders (.pst) files over LAN and WAN links https://support.microsoft.com/en-us/kb/297019 Note Customers are responsible for both defining and maintaining adequate network and disk I/O. Microsoft will not assist in troubleshooting…

0

About: Mailbox Accessing APIs

These APIs are used to access folders and items inside mailbox and public folder stores.  These are the APIs used to create mail client applications.  They have varying levels of business logic available – not all APIs have objects for working with specialized item types like contacts, appointments, tasks, etc. These APIs do not do…

2

Events from mailbox activity

One with developing code for messaging development is to have code run when a specific event happens.  Each mailbox API has its own ways of handling calls.  Below is an overview of APIs and other mechanisms which support events on the mailbox. Exchange Web Services (EWS): Exchange Web Service notifications are widely used and has…

0