home | get Sue’s code | forums | share code | registration
Brought to you by...

More Outlook Resource Sites

Microsoft Developer Network (MSDN)

FAQs and other general resources

Outlook Developer News

Transition at OutlookCode.com

A word from Sue Mosher: I am delighted to announce that, effective immediately, OutlookCode.com is under new management. My fellow Outlook MVP Eric Legault brings to the site a wealth of experience and enthusiasm not just for Outlook development but also for SharePoint. In the future, you can expect to see more content related to how these two platforms can work together.

Outlook has been at the center of my life for more than a decade, and I have greatly enjoyed helping people -- beginners to experts -- explore Outlook as a development platform. However, it is time for me to move on to do other things. You can follow my evolving interests by visiting my Turtleflock web site. Also, I will still be around here to respond to comments on my code samples and follow up on my existing discussion threads.

I wish you all the best of luck in your Outlook endeavors and hope you will give Eric the same support that I've enjoyed over the years.

Convert a business form to an Outlook custom form

Have you ever wanted to convert a business form to electronic transmission using Outlook? In a detailed step-by-step walkthrough, Jimmy shows you how, with plenty of screen shots for every procedure, including tricky techniques like tab order and validation. 

The walkthrough is for a message form, so it assumes that the organization has an Exchange server where the forms can be published, but the basic form design methods are applicable to any type of form.

Another round of sample VSTO add-ins for Outlook

Here are more sample add-ins using Visual Studio 2008 and Outlook 2007:

Outlook and VS2008 on video

Microsoft has a new Office Developer Show series that offers tips on creating applications for Outlook and other Office programs. Some highlights:

  • Episode 2 - how to create a class in an Outlook project to avoid the object model security prompts
  • Episode 4 - a tip about saving and restoring the position of custom toolbars in Outlook 2007
  • Episode 5 - an Outlook add-in that uses the Application.ItemSend event to help users remember to send an attachments

Using the Outlook object model with .NET

Matt Staehle, who works on Microsoft's Messaging Developer Support Team, has been running a series of articles on working with the Outlook object model in .NET languages. Read all the installments to pick up best practices and avoid common mistakes. Code examples are in C#:

From the Forums

Basic Outlook Techniques
How to create multiple folder into pst file...
Hi I want to create multiple subdirectories into a pst file. It's easy one by one, but I have to create more than 100 sub dir !!! Is it possible to script this creation Thanks
Check for PST format: ANSI or UNICODE
I read on MS that you can access the PR_STORE_SUPPORT_MASK property, but I don't know how to do this? Do I create a CDO session and check it there?
Outlook Form Design
Force Form to run in Foreground, Outlook...
I have a form that gives the users a choice to add various bits of text to the subject line, when the user clicks on the send button, The Form runs bun in the background!! how do i make the form run in the foreground?? any clues please. Many thanks....
show column in custom view as dropdownlist...
hello I've custom message form with a combobox.Userproperty of type text is associted with this combobox.I'm displaying this userproperty in custom view on Inbox.I'm able to edit its value by enabling in cell editing.But I need to display this column...
Outlook Expert Techniques
I get a 'Cannot create ActiveX component'...
It seems to be related to Outlook Redemtion and in particular the CreateObject line: Dim sItem As Object sItem = CreateObject("Redemption.SafeAppointmentItem") Has anyone else seen this and know how to fix it? Thanks!
Modify the item context menu
Does anyone have any idea how to modify the item context menu - that is I want to display a new context menu every time users right click on a field I added. I want that users will be able to change the value of field just like they are able to change...
Outlook and .NET
Error in trying to save inline images
Hi, I am trying to save the attachments in the emails by calling the SaveAsFile method, and it works fine for those "ordinary" attachments. However, when the plug-in tries to save an inline attachment, for e.g. an image, the following error is returned: "Cannot...
create a new pst file and add a list of msg...
I need to create a new pst file and add a list of msg file to it and save the pst file in a network folder. How to do this?
Code Essentials
Email activity tracking
Hi, I know this is a bit vague and I apologise for my lack of knowledge. I have a question regarding a shared mailbox within outlook 2000. I need to know if there is any code that can track who moved an email and when from the inbox of one shared mailbox...
Add category to Appointment Item via VBA...
Hi All, I have some code that will create the appointment in Outlook but I wish to also categorize the appointment as well. Currently have - With objAppt .Start = cerDate + cerStartTime .End = cerDate + cerEndTime .Subject...

Newest Resources

LINQ to DASL: Changing Appointments with C# and LINQ -- Short video that demonstrates how to use VSTO Power Tools to perform a DASL query on the Calendar folder using the LINQ syntax and then perform additional string value checking with a regular expression

Outlook Context Menus and Creating a Meeting from an Email -- Short video demonstrating how to create a context menu command for sending a meeting request to recipients of an email message. Note: The Inspector wrapper class is extraneous and overcomplicates the project.

How to get the IWin32Window for Outlook -- This C# class from Helmut Obertanner could be used to pass the Outlook as parent to .Net Forms and Messageboxes to prevent those UI elements from being hidden by Outlook windows.

Additional custom panel in Microsoft Outlook -- Lukas Neumann uses Windows API techniques to hack the Outlook user interface and add a custom panel in the Explorer window.

New Outlook VSTO AddIn: How to disable Reply To All and Forward in Outlook 2007 -- This very simple add-in adds controls to the ribbon to disable the Forward and Reply to All actions in the MailItem.Actions collection.

Form region demo - categories text box -- This no-code form region for Outlook 2007 adds a Categories text box to received and sent messages.

Outlook Meeting Tracking Export -- Jaz shows how easy it is to write an Outlook macro to export meeting attendee information to Excel.

Use the Right Events for the Right Cases -- Microsoft's Ryan Gregg explains why the Application.ItemSend and Inspector.Close events are more appropriate in some scenarios than the item-level Send and Close events.

Redemption 4.6.0.924 -- Updates this popular, alternative Outlook developer library with an RDOSession.PickFolder method with more features than Namespace.PickFolder. Adds an RDO UserProperties collection for accesing custom item properties. Plus many more new features and bug fixes.

Aspose.Network -- Component suite for .NET development that includes methods to import .msg format data from file or stream without Outlook installed and export Outlook messages to .mht and .eml formats. Includes an Outlook control that can accept Outlook data via drag-and-drop.

Calling into a VSTO Add-in from a COM Smart Tag -- It's not possible to build a smart tag into a VSTO add-in, but McLean Schofield explains how to make it possible for the smart tag to call the add-in's methods.

Deploying Office Solutions with a Setup Project -- Mary Lee highlights the new information available on using Windows Installer to deploy Office 2007 solutions built with Visual Studio 2008.

Two-Way STSSync Protocol Server for Outlook 2007 -- Generic solution from Patrick Creehan to make it easy to build data providers that take advantage of the synchronization built into Outlook

Custom calendar providers for Outlook 2007 -- How to use a web service to make a data source appear in Outlook 2007 as a SharePoint event list.

VSTO Add-ins, COMAddIns and RequestComAddInAutomationService -- Andrew Whitechapel explains how to expose methods in a VSTO add-in that other add-ins (including VBA) can call.

Login

login
password
Remember me

You will need to register and log in if you want to download the source code for the Microsoft Outlook Programming book. The forums and code sharing areas are open to both registered and non-registered visitors.

Hot Code Samples

Beginner
Save and remove attachments from email items...
Sending a mail message with today's appointments...
Add appointment to other user's Calendar
Intermediate
C# AddIn sample: InspectorWrapper & CommandBar...
Import Appointments FROM Excel
Send Word document as message
Advanced
Set color label on appointment
Avoid Security Propmts / Access MAPI Properties...
CommandBar & ExplorerWrapper c# example

OutlookCode RSS Feeds

All OutlookCode.com content

Outlook developer news

New Outlook developer resources

OutlookCode.com forums

OutlookCode.com code samples

OutlookCode.com articles