This sample demostrates how to export an Outlook Item or Folder using Visual Studio Tools For Office — Outlook and Visual Basic 2005.
Download
Discussion
This sample demostrates the following:
- Using VSTO for Outlook 2.0 with Visual Basic 2005.
- Using the BackgroundWorker object.
- Displaying a progress dialog.
- Using the CompontentModel (Reflection) to read Outlook Item Properties.
- Using XmlTextWriter to format Xml.
- Adding individual toolbars on each instance of Outlook Inspectors & Explorers.
- Displaying an About Dialog, using information specific to this addon (via Reflection & Generics).
- How to Programmatically Reference a COM Add-in.
NOTE: This sample does not report exceptions that occur on the background worker thread on the main UI thread.
This sample defines the following types:
|
Type |
File |
Description |
|
AboutBoxForm
|
AboutBoxForm.vb
|
Help About form.
|
|
AutomationObject
|
AutomationObject.vb
|
An object that is exposed via the COMAddiIn.Object property allowing Outlook's VBA code to control the Xml Export Sample Addin.
|
|
Element
|
Element.vb
|
An abstract base class that represents an Outlook Element that is to be exported.
|
|
ExportController
|
ExportController.vb
|
The class that coordinates the export process and updating the progress dialog.
|
|
Exporter
|
Exporter.vb
|
Main class that exports an Outlook item or MAPI folder.
|
|
ItemElement
|
ItemElement.vb
|
A specific Element that represents an Outlook Contact's Link.
|
|
MapiFolderElement
|
MapiFolderElement.vb
|
A specific Element that represents an Outlook MAPI Folder.
|
|
NestedCollectionElement
|
NestedCollectionElement.vb
|
A specific Element that represents the collection of nested items, such as the recipients on a distribution list. NOTE: This class represents an element of Outlook that is exported.
|
|
NestedElement
|
NestedElement.vb
|
A specific abstract Element that represents nested objects on an Outlook Item.
|
|
NestedElementCollection
|
NestedElementCollection.vb
|
A type safe collection of NestedElement objects.
|
|
ProgressChangingEventArgs
|
ProgressChangingEventArgs.vb
|
Used by the Exporter to report progress to the ProgressDialog via the ExportController.
|
|
ProgressDialog
|
ProgressDialog.vb
|
Used to display progress while exporting an Outlook item or MAPI folder.
|
|
PropertyCollection
|
PropertyCollection.vb
|
A type safe collection of property descriptors.
|
|
RootElement
|
RootElement.vb
|
A specific Element that represents top level items in Outlook. For example a Contact item.
|
|
RootElementCollection
|
RootElementCollection.vb
|
A type safe collection of RootElement objects. NOTE: This class is not exported.
|
|
ThisApplication
|
ThisApplication.Info.vb
|
Provides information specific to the current Add-in's assembly.
|
|
ThisApplication
|
ThisApplication.vb
|
Event handlers to control creation & destruction of UIController objects for Outlook.Explorer & Outlook.Inspector objects.
|
|
UIAdapter
|
UIAdapter.vb
|
An polymorphic abstraction of Outlook.Explorer & Outlook.Inspector used by UIController.
|
|
UIController
|
UIController.vb
|
Provides a toolbar on the current Outlook.Explorer or Outlook.Inspector as defined
by a contained UIAdapter object.
|
|
UIControllerCollection
|
UIControllerCollection.vb
|
A type safe collection of UIController objects.
|
|
UIExplorerAdapter
|
UIExplorerAdapter.vb
|
A specific UIAdapter for Outlook.Explorer objects.
|
|
UIInspectorAdapter
|
UIInspectorAdapter.vb
|
A specific UIAdapter for Outlook.Inspector objects.
|
|
ValueElement
|
ValueElement.vb
|
A specific Element that represents value properties on an Outlook item.
|
|
WaitCursor
|
WaitCursor.vb
|
A disposable class used to control the Wait Cursor.
NOTE: This class implements IDisposable allowing it to be used
with the Using statement.
|
See Also
System Requirements