Saturday, July 24, 2010

Methods to Open Outlook Express/Outlook from VB.Net Code

Methods to Open Outlook Express/Outlook from VB Code

Option :1

Dim Addr As String = ""
Dim Subject As String = "Subject"
Dim Body As String = "Body"
Dim Attach As String = "C:\sample\xyz.txt"

System.Diagnostics.Process.Start("mailto :" & Addr & "?subject=" & Subject & "&body=" & Body & "&attachment=" & Attach)
This opens the outlook or outlook express (Whatever available) with To, Subject and Body Message .But does not attaching the file

Option :2
Using process component’s start method we can able to start the Outlook Express or Outlook.
The process name for Outlook is ‘outlook’ and for Outlook Express is ‘msimn’
So it is like below
System.Diagnostics.Process.Start("outlook") - Outlook
System.Diagnostics.Process.Start("msimn") – Outlook Express

This will simply opens the application
We can also pass the parameter to the process during this startup to do our requirement
I.e the syntax for process.start method is
System.Diagnostics.Process.Start(application, argument)
So argument for Outlook to open a new message window and to attach a specified file is
“/a File name” (Note: I have listed the available command line argument for outlook)

Sample Code:

Dim mail As String = "/a C:\sample\xyz.txt"
System.Diagnostics.Process.Start("outlook ", mail)

For your Information the other list of command-line argument available for Outlook is listed below (It is available in the outlook help itself)


Creates an item with the specified file as an attachment.


"C:\Program Files\Microsoft Office\Office11\Outlook.exe" /a "C:\My Documents\labels.doc"

If no item type is specified, IPM.Note is assumed. Cannot be used with message classes that aren't based on Outlook.

/altvba otmfilename
Opens the VBA program specified in otmfilename, rather than %appdata%\Microsoft\Outlook\VbaProject.OTM.

/c messageclass
Creates a new item of the specified message class (Outlook forms or any other valid MAPI form).


/c ipm.activity creates a Journal entry

/c ipm.appointment creates an appointment

/c creates a contact

/c ipm.note creates an e-mail message

/c ipm.stickynote creates a note

/c ipm.task creates a task

Prompts for the default manager of e-mail, news, and contacts.

Starts Outlook and deletes client-based rules.

Deletes the logging records saved when a manager or a delegate declines a meeting.

Removes Search Folders from the Microsoft Exchange server store.

Clears and regenerates free/busy information. This switch can only be used when you are able to connect to your Microsoft Exchange server.

Removes invalid profile keys and recreates default registry keys where applicable.

Launches Outlook with a clean Personal Folders file (.pst) (Personal Folders file (.pst): Data file that stores your messages and other items on your computer. You can assign a .pst file to be the default delivery location for e-mail messages. You can use a .pst to organize and back up items for safekeeping.).

Clears and regenerates reminders.

Starts Outlook and deletes client- and server-based rules.

Deletes all Schedule+ data (free/busy, permissions, and .cal file) from the server and enables the free/busy information from the Outlook Calendar to be used and viewed by all Schedule+ 1.0 users.

Starts Outlook and deletes server-based rules.

Deletes duplicate reminder messages.

Deletes the subscription messages and properties for subscription features.

Restores default views. All custom views you created are lost.

Starts Outlook without figuring out if Outlook should be the default client in the first run.

Opens the specified message file (.msg) as an OLE embedding. Also used without command-line parameters for standard OLE co-create.

/f msgfilename
Opens the specified message file (.msg) or Microsoft Office saved search (.oss).

Starts Outlook as if it were run for the first time.

/hol holfilename
Opens the specified .hol file.

/ical icsfilename
Opens the specified .ics file.

/importprf prffilename
Launches Outlook and opens/imports the defined MAPI profile (*.prf). If Outlook is already open, queues the profile to be imported on the next clean launch.

/l olkfilename
Opens the specified .olk file.

/launchtraininghelp assetid
Opens a Help window with the Help topic specified in assetid.

/m emailname
Provides a way for the user to add an e-mail name to the item. Only works in conjunction with the /c command-line parameter.


Outlook.exe /c ipm.note /m emailname

Starts Outlook without loading outcmd.dat (customized toolbars) and *.fav file.

Starts Outlook with extensions turned off, but listed in the Add-In Manager.

Starts Outlook without checking mail at startup.

Starts Outlook with the Reading Pane off.

/p msgfilename
Prints the specified message (.msg). Does not work with HTML.

/profile profilename
Loads the specified profile. If your profile name contains a space, enclose the profile name in quotation marks (").

Opens the Choose Profile dialog box regardless of the Options setting on the Tools menu.

Starts Outlook using an existing Outlook window, if one exists. Used in combination with /explorer or /folder.

Resets default folder names (such as Inbox or Sent Items) to default names in the current Office user interface language.

For example, if you first connect to your mailbox Outlook using a Russian user interface, the Russian default folder names cannot be renamed. To change the default folder names to another language such as Japanese or English, you can use this switch to reset the default folder names after changing the user interface language or installing a different language version of Outlook.

Restores missing folders for the default delivery location.

Clears and regenerates the Navigation Pane for the current profile.

Opens Outlook and displays the remote procedure call (RPC) connection status dialog.

/s filename
Loads the specified shortcuts file (.fav).

Starts Outlook without extensions, Reading Pane, or toolbar customization.

Starts Outlook with the Reading Pane off.

Starts Outlook without checking mail at startup.

Starts Outlook with extensions turned off, but listed in the Add-In Manager.

Starts Outlook without loading Outcmd.dat (customized toolbars) and *.fav file.

/select foldername
Starts Outlook and opens the specified folder in a new window. For example, to open Outlook and display the default calendar use: "c:\Program Files\Microsoft Office\Office11\Outlook.exe" /select outlook:calendar

Starts Outlook and forces a detection of new meeting requests in the Inbox, and then adds them to the calendar.

/t oftfilename
Opens the specified .oft file.

/v vcffilename
Opens the specified .vcf file.

/vcal vcsfilename
Opens the specified .vcs file.

/x xnkfilename
Opens the specified .xnk file.

No comments: