Verwenden der Cdosys.dll-Bibliothek zum Senden einer E-Mail-Nachricht mit Anlagen
Ursprüngliche KB-Nummer: 310212
Zusammenfassung
In diesem Artikel wird beschrieben, wie Sie die CdO (Collaboration Data Objects) für Windows 2000-Bibliothek (Cdosys.dll) verwenden, um eine E-Mail-Nachricht mit Anlagen zu senden. Sie können Text, HTML oder eine Webseite im Textkörper der E-Mail-Nachricht senden, indem Sie den lokalen SMTP-Server oder einen Smarthostserver in Microsoft Visual C# verwenden.
Hinweis
Die Cdosys.dll Bibliothek wird auch als CDOSYS bezeichnet.
Weitere Informationen
Führen Sie die folgenden Schritte aus, um CDOSYS wie im Abschnitt Zusammenfassung beschrieben zu verwenden:
Microsoft Visual Studio starten
Wählen Sie im Menü Datei die Option Neu und dann Projekt aus.
Wählen Sie unter Projekttypendie Option Visual C# und dann unter Vorlagendie Option Konsolenanwendung aus. Standardmäßig wird Program.cs erstellt.
Hinweis
In Microsoft Visual C# .NET 2003 wird Visual C# in Visual C#-Projekte geändert. Standardmäßig wird Class1.cs erstellt.
Fügen Sie einen Verweis auf die Microsoft CDO Für Windows 2000-Bibliothek hinzu. Gehen Sie dazu wie folgt vor:
Wählen Sie im Menü Projekt die Option Verweis hinzufügen aus.
Suchen Sie auf der Registerkarte COM nach Microsoft CDO für Windows 2000-Bibliothek.
Hinweis
Wählen Sie in Visual C# .NET 2003 auswählen aus.
Um Ihre Auswahl zu übernehmen, wählen Sie im Dialogfeld Verweise hinzufügen die Option OK aus.
Wenn Sie ein Dialogfeld zum Generieren von Wrappern für die ausgewählten Bibliotheken erhalten, wählen Sie Ja aus.
Ersetzen Sie im Codefenster den gesamten Code durch den folgenden 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; } } }
Wenn TODO im Code angezeigt wird, ändern Sie den Code wie angegeben.
Drücken Sie F5, um das Programm zu erstellen und auszuführen.
Vergewissern Sie sich, dass die E-Mail-Nachricht sowohl gesendet als auch empfangen wurde.
References
Weitere Informationen zur Microsoft Office-Entwicklung mit Visual Studio finden Sie unter Microsoft Office-Entwicklung mit Visual Studio.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für