Send Mail Sample

This sample shows how to send e-mail over SMTP using classes in the System.Web.Mail namespace.

To get samples and instructions for installing them

  • Do one or more of the following:

    • On the Help menu, click Samples.

      The Readme displays information about samples.

    • Visit the Visual Studio 2008 Samples Web site. The most recent versions of samples are available there.

    • Locate samples on the computer on which Visual Studio is installed. By default, samples and a Readme file are installed in drive:\Program Files\Microsoft Visual Studio 9.0\Samples\lcid. For Express editions of Visual Studio, all samples are located online.

For more information, see Visual Studio Samples.

Security noteSecurity Note:

This sample code is intended to illustrate a concept, and it shows only the code that is relevant to that concept. It may not meet the security requirements for a specific environment, and it should not be used exactly as shown. We recommend that you add security and error-handling code to make your projects more secure and robust. Microsoft provides this sample code "AS IS" with no warranties.

To run this sample

  1. Check the SmtpServer property setting. See "Requirements," in the following section, for more information.

  2. Press F5.


  1. Internet Information Services (IIS) is required.

  2. SMTP Service must be installed and running. SMTP Service is an option installed with IIS.

  3. The SmtpServer property must be set to the IP address or server name where the SMTP Server is running. In most cases this is the "localhost" computer. Therefore, the SmtpServer property value can be either the friendly name, "localhost", or "". The latter is the default for this application. To find the SMTP server name:

    1. Open the IIS snap-in (In Control Panel, open Administrative Tools, and then open Internet Information Services).

    2. Expand the Default SMTP Virtual Server node.

    3. Click Domains. In the right pane you will see a list of Domain Names. You may set the SmtpServer property to one of these names or its corresponding IP address.

  4. The Default SMTP Virtual Server must also be running. Be aware that it is possible for the SMTP Service to be running, but the Default SMTP Server in IIS to be stopped. There is a difference between the service itself and the actual server run by the service. If your Default SMTP Virtual Server is not running, a red X icon will be visible over its node in the IIS snap-in. To start the server, right-click its node and click Start.

  5. Set the relay restrictions:

    1. In IIS, right-click Default SMTP Virtual Server and select Properties.

    2. In the Properties dialog box click the Access tab.

    3. Click Relay.

    4. In the Relay Restrictions dialog box, select the box labeled All except the list below. The bottom check box can be selected or cleared.


This application has a single form with controls similar to the Microsoft Outlook e-mail client. When the form loads, it checks to make sure that the user has the SMTP Service installed and that it is running.

See Also


How to: Install and Configure SMTP Virtual Servers in IIS 6.0