How to use the Cdosys.dll library to send an e-mail with attachments
View products that this article applies to.SUMMARY
This article describes how to use the Collaboration Data Objects (CDO) for Windows 2000 library (Cdosys.dll) to send an e-mail message with attachments. You can send text or HTML or a Web page in the body of the e-mail message by using the local SMTP server or by using a smart host server in Microsoft Visual C# .NET.Note The Cdosys.dll library is also known as CDOSYS.
MORE INFORMATION
To use CDOSYS as described in the "Summary" section, follow these steps:- Start Microsoft Visual Studio .NET.
- On the File menu, click New, and then click Project.
- Under Project Types, click Visual C# Projects, and then click Console Application under Templates. By default, Class1.cs is created.
- Add a reference to the Microsoft CDO For Windows 2000 Library. To do this, follow these steps:
- On the Project menu, click Add Reference.
- On the COM tab, locate Microsoft CDO For Windows 2000 Library, and then click Select.
- To accept your selections, click OK in the Add References dialog box.
If you receive a dialog box to generate wrappers for the libraries that you selected, click Yes.
- In the code window, replace all the code with the following code:
namespace CdoSys { using System; class Class1 { static void Main(string[] args) { try { CDO.Message oMsg = new CDO.Message(); CDO.IConfiguration iConfg; iConfg = oMsg.Configuration; ADODB.Fields oFields; oFields = iConfg.Fields; // Set configuration. ADODB.Field oField = oFields["http://schemas.microsoft.com/cdo/configuration/sendusing"]; //TODO: To send by using the smart host, uncomment the following lines: //oField.Value = CDO.CdoSendUsing.cdoSendUsingPort; //oField = oFields["http://schemas.microsoft.com/cdo/configuration/smtpserver"]; //oField.Value = "smarthost"; // TODO: To send by using local SMTP service. //oField = oFields["http://schemas.microsoft.com/cdo/configuration/sendusing"]; //oField.Value = 1; oFields.Update(); // Set common properties from message. //TODO: To send text body, uncomment the following line: //oMsg.TextBody = "Hello, how are you doing?"; //TODO: To send HTML body, uncomment the following lines: //String sHtml; //sHtml = "<HTML>/n" + // "<HEAD>/n" + // "<TITLE>Sample GIF</TITLE>/n" + // "</HEAD>/n" + // "<BODY><P>/n" + // "<h1><Font Color=Green>Inline graphics</Font></h1>/n" + // "</BODY>/n" + // "</HTML>"; //oMsg.HTMLBody = sHtml; //TOTO: To send WEb page in an e-mail, uncomment the following lines and make changes in TODO section. //TODO: Replace with your preferred Web page //oMsg.CreateMHTMLBody("http://www.microsoft.com", // CDO.CdoMHTMLFlags.cdoSuppressNone, // "", ""); oMsg.Subject = "Test SMTP"; //TODO: Change the To and From address to reflect your information. oMsg.From = "someone@example.com"; oMsg.To = "someone@example.com"; //ADD attachment. //TODO: Change the path to the file that you want to attach. oMsg.AddAttachment("C://Hello.txt", "", ""); oMsg.AddAttachment("C://Test.doc", "", ""); oMsg.Send(); } catch (Exception e) { Console.WriteLine("{0} Exception caught.", e); } return; } } }
- Where TODO appears in the code, modify the code as indicated.
- To build and run the program, press F5.
- Verify that the e-mail message has been both sent and received.
REFERENCES
For more information about Microsoft Office development with Visual Studio, see the following Microsoft Developer Network (MSDN) Web site:http://msdn.microsoft.com/library/en-us/dnoffdev/html/vsofficedev.asp
For additional information about how to use CDOSYS, click the following article numbers to view the articles in the Microsoft Knowledge Base:310221 How to use the Cdosys.dll library to embed a message in a new message by using Visual C# .NET
310224 How to use the Cdosys.dll library to process mail in the Drop directory by using Visual C# .NET
310225 How to use the Cdosys.dll Library to save a message to a file by using Visual C# .NET
The information in this article applies to:
- Microsoft Visual C# .NET (2003)
- Microsoft Visual C# .NET (2002)
- Microsoft Collaboration Data Objects for Windows 2000
- ActiveX Data Objects (ADO) 2.5
- ActiveX Data Objects (ADO) 2.6
- ActiveX Data Objects (ADO) 2.7
- Microsoft Internet Information Services version 6.0
- Microsoft Internet Information Services 5.0
Last Reviewed: | 7/26/2004 (1.0) |
Keywords: | kbcode kbhowto KB310212 kbAudDeveloper |
Microsoft Legal Links Terms of use Security & Privacy Accessibility