Walkthrough: Creating Your First VSTO Add-In for Outlook
This walkthrough shows you how to create a VSTO Add-in for Microsoft Office Outlook. The features that you create in this kind of solution are available to the application itself, regardless of which Outlook item is open. For more information, see Office Solutions Development Overview (VSTO).
Applies to: The information in this topic applies to VSTO add-in projects for Outlook. For more information, see Features Available by Office Application and Project Type.
This walkthrough illustrates the following tasks:
Creating an Outlook VSTO Add-in project for Outlook.
Writing code that uses the object model of Outlook to add text to the subject and body of a new mail message.
Building and running the project to test it.
Cleaning up the completed project so that the VSTO Add-in no longer runs automatically on your development computer.
You need the following components to complete this walkthrough:
An edition of Visual Studio that includes the Microsoft Office developer tools. For more information, see Configuring a Computer to Develop Office Solutions.
Start Visual Studio.
On the File menu, point to New, and then click Project.
In the templates pane, expand Visual C# or Visual Basic, and then expand Office/SharePoint.
Under the expanded Office/SharePoint node, select the Office Add-ins node.
In the list of project templates, choose an Outlook VSTO Add-in project.
In the Name box, type FirstOutlookAddIn.
Visual Studio creates the FirstOutlookAddIn project and opens the ThisAddIn code file in the editor.
Next, add code to the ThisAddIn code file. The new code uses the object model of Outlook to add text to each new mail message. By default, the ThisAddIn code file contains the following generated code:
A partial definition of the
ThisAddInclass. This class provides an entry point for your code and provides access to the object model of Outlook. For more information, see Programming VSTO Add-Ins. The remainder of the
ThisAddInclass is defined in a hidden code file that you should not modify.
ThisAddIn_Shutdownevent handlers. These event handlers are called when Outlook loads and unloads your VSTO Add-in. Use these event handlers to initialize your VSTO Add-in when it is loaded, and to clean up resources used by your VSTO Add-in when it is unloaded. For more information, see Events in Office Projects.
In the ThisAddIn code file, declare a field named
inspectorsfield maintains a reference to the collection of Inspector windows in the current Outlook instance. This reference prevents the garbage collector from freeing the memory that contains the event handler for the E:Microsoft.Office.Interop.Outlook.InspectorsEvents_Event.NewInspector event.
ThisAddIn_Startupmethod with the following code. This code attaches an event handler to the E:Microsoft.Office.Interop.Outlook.InspectorsEvents_Event.NewInspector event.
In the ThisAddIn code file, add the following code to the
ThisAddInclass. This code defines an event handler for the E:Microsoft.Office.Interop.Outlook.InspectorsEvents_Event.NewInspector event.
When the user creates a new mail message, this event handler adds text to the subject line and body of the message.
Private Sub inspectors_NewInspector(ByVal Inspector As Microsoft.Office.Interop.Outlook.Inspector) Handles inspectors.NewInspector Dim mailItem As Outlook.MailItem = TryCast(Inspector.CurrentItem, Outlook.MailItem) If Not (mailItem Is Nothing) Then If mailItem.EntryID Is Nothing Then mailItem.Subject = "This text was added by using code" mailItem.Body = "This text was added by using code" End If End If End Sub
To modify each new mail message, the previous code examples use the following objects:
Applicationfield of the
Applicationfield returns an T:Microsoft.Office.Interop.Outlook.Application object, which represents the current instance of Outlook.
Inspectorparameter of the event handler for the E:Microsoft.Office.Interop.Outlook.InspectorsEvents_Event.NewInspector event. The
Inspectorparameter is an T:Microsoft.Office.Interop.Outlook.Inspector object, which represents the Inspector window of the new mail message. For more information, see Outlook Solutions.
When you build and run the project, verify that the text appears in the subject line and body of a new mail message.
Press F5 to build and run your project.
When you build the project, the code is compiled into an assembly that is included in the build output folder for the project. Visual Studio also creates a set of registry entries that enable Outlook to discover and load the VSTO Add-in, and it configures the security settings on the development computer to enable the VSTO Add-in to run. For more information, see Office Solution Build Process Overview.
In Outlook, create a new mail message.
Verify that the following text is added to both the subject line and body of the message.
This text was added by using code.
When you finish developing a project, remove the VSTO Add-in assembly, registry entries, and security settings from your development computer. Otherwise, the VSTO Add-in will run every time that you open Outlook on the development computer.
- In Visual Studio, on the Build menu, click Clean Solution.
Now that you have created a basic VSTO Add-in for Outlook, you can learn more about how to develop VSTO Add-ins from these topics:
General programming tasks that you can perform by using VSTO Add-ins for Outlook. For more information, see Programming VSTO Add-Ins.
Using the object model of Outlook. For more information, see Outlook Solutions.
Customizing the UI of Outlook, for example, by adding a custom tab to the Ribbon or creating your own custom task pane. For more information, see Office UI Customization.
Building and debugging VSTO Add-ins for Outlook. For more information, see Building Office Solutions.
Deploying VSTO Add-ins for Outlook. For more information, see Deploying an Office Solution.