Update: Fehlermeldung "Fehler beim Senden von e-Mail-Nachrichten", beim Senden einer e-Mail-Nachricht mit eine.NET Framework 4.0-basierte Anwendung, die die Klasse "System.Net.Mail.SmtpClient" verwendet wird, ist die e-Mail-Anlage größer als 3 MB

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 2183292 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Problembeschreibung

Folgendes Szenario:
  • Führen Sie eine .NET Framework 4.0-basierte Anwendung. Diese Anwendung verwendet dieSystem.Net.Mail.SmtpClientKlasse zum Senden von e-Mail-Nachrichten.
  • Fügen Sie eine Anlage, die erfüllt die folgenden Bedingungen einer e-Mail-Nachricht.
    • DieTransferEncoding-Eigenschaft in der Anlage wurde nicht angegeben. Oder dieTransferEncodingEigenschaft ist als angegebenBase64oderUnbekannter.
    • Die Größe der Anlage ist größer als 3 MB.
  • Sie senden die e-Mail-Nachricht.
In diesem Szenario eineSystem.NET.Mail.SmtpExceptionAusnahme und eineSystem.IndexOutOfRangeExceptioninnere Ausnahme werden generiert. Darüber hinaus erhalten Sie die folgende Fehlermeldung angezeigt:
Fehler bei der sendende e-Mail-Nachrichten.
Im folgenden werden die Fehlermeldung für die innere Ausnahme:
Der Index war außerhalb der Grenzen des Arrays.

Lösung

Hotfix-Informationen

Ein unterstützter Hotfix ist jetzt von Microsoft erhältlich. Es soll jedoch nur das Problem zu beheben, das in diesem Artikel beschrieben. Wenden Sie es nur auf Systemen, bei denen dieses spezielle Problem. auftritt

Beheben dieses Problem, die Kontaktinformationen Microsoft Product Support Services um den Hotfix zu erhalten. Eine vollständige Liste der Telefonnummern von Microsoft Product Support Services sowie Informationen über Supportkosten, finden Sie auf den folgenden Microsoft-Website:
http://support.Microsoft.com/contactus/?ws=Support
Hinweis:In bestimmten Fällen können Gebühren, die normalerweise für Supportanrufe anfallen abgebrochen werden, wenn ein Microsoft-Supportmitarbeiter feststellt, dass ein bestimmtes Update das Problem beheben. Die normalen Supportkosten gelten für zusätzliche Supportfragen und Probleme, die nicht für dieses spezielle Update in Frage. qualifizieren,

Hinweis:Herunterladen dieses Updates können Sie auch die folgende Microsoft-Website besuchen:
https://Connect.Microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=30226

Voraussetzungen:

Benötigen Sie .NET Framework 4.0 installiert haben, um das Anwenden dieses Hotfixes.

Neustartanforderung

Sie müssen den Computer neu starten, nachdem Sie diesen Hotfix anwenden, wenn keine betroffene Datei verwendet wird.

Ersetzte Hotfixes

Dieser Hotfix ersetzt keine anderen Hotfixes nicht.

Dateiinformationen

Die englische Version dieses Updates besitzt die Dateiattribute (oder höher Dateiattribute), die in der folgenden Tabelle aufgelistet werden. Die Datums- und Uhrzeitangaben für diese Dateien sind in Coordinated Universal Time (UTC) aufgeführt. Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu ermitteln, verwenden dieMicrosoft Time ZoneRegisterkarte derDatum und Uhrzeitin der Systemsteuerung.
Dateiinformationen für alle x 86-basierten Versionen von Windows XP, von Windows Server 2003, Windows Vista, Windows Server 2008, von 7, und von Windows Server 2008 R2
Tabelle minimierenTabelle vergrößern
DateinameDateiversionDateigrößeDatumZeitPlattform
SetupUi.dll10.0.30319.335295,24813-Jul-201006: 36X 86
Setupengine.dll10.0.30319.335809,30413-Jul-201006: 36X 86
"Setup.exe"10.0.30319.33578,15213-Jul-201006: 36X 86
"System.dll"4.0.30319.3353,482,44013-Jul-201011: 48X 86
Dateiinformationen für alle x 64-basierten Versionen von Windows XP, von Windows Server 2003, Windows Vista, Windows Server 2008, von 7, und von Windows Server 2008 R2
Tabelle minimierenTabelle vergrößern
DateinameDateiversionDateigrößeDatumZeitPlattform
SetupUi.dll10.0.30319.335295,24813-Jul-201006: 36X 86
Setupengine.dll10.0.30319.335809,30413-Jul-201006: 36X 86
"Setup.exe"10.0.30319.33578,15213-Jul-201006: 36X 86
"System.dll"4.0.30319.3353,482,44013-Jul-201011: 48X 86
Dateiinformationen für alle IA-64-basierten Versionen von Windows XP, von Windows Server 2003, Windows Vista, Windows Server 2008, von 7, und von Windows Server 2008 R2
Tabelle minimierenTabelle vergrößern
DateinameDateiversionDateigrößeDatumZeitPlattform
SetupUi.dll10.0.30319.335295,24813-Jul-201006: 36X 86
Setupengine.dll10.0.30319.335809,30413-Jul-201006: 36X 86
"Setup.exe"10.0.30319.33578,15213-Jul-201006: 36X 86
"System.dll"4.0.30319.3353,482,44013-Jul-201011: 48X 86
System.Resources.dll4.0.30319.335217,44013-Jul-201006: 36X 86

Abhilfe

Um dieses Problem zu umgehen, verwenden Sie eine der folgenden Methoden:
  • Geben dieTransferEncoding-EigenschaftQuotedPrintableoderSiebenBit. Fügen Sie eines der folgenden Codezeilen z. B. in der Anwendung:
    • attachment.TransferEncoding = System.Net.Mime.TransferEncoding.QuotedPrintable;
    • attachment.TransferEncoding = System.Net.Mime.TransferEncoding.SevenBit;
    Hinweis:Diese Methode eventuell nicht in jedem Fall funktionieren, weil dieSiebenBitCodierung und derQuotedPrintableCodierung kann beschädigt werden die Anlagen, und weil dieQuotedPrintableCodierung möglicherweise doppelt auf die Größe der Anlage.
  • Senden von nur eine Anlage, die ist kleiner als 3 MB.

Status

Microsoft hat bestätigt, dass es ein Problem bei den Microsoft-Produkten, die in der im Abschnitt "Beziehen sich auf" aufgelisteten handelt

Informationsquellen

Weitere Informationen über dieSmtpClientKlasse, finden Sie auf die folgenden Microsoft Developer Network (MSDN)-Website:
Allgemeine Informationen über die Klasse "SmtpClient"
Weitere Informationen über dieTransferEncoding-Eigenschaft finden Sie auf den folgenden MSDN-Website:
Allgemeine Informationen über die Eigenschaft "TransferEncoding"
Weitere Informationen zur Terminologie für Softwareupdates, klicken Sie auf die folgende KB-Artikelnummer:
824684Beschreibung der Standardterminologie, die zum Beschreiben von Microsoft-Softwareupdates verwendet wird

Weitere Informationen

Führen Sie den folgenden Code, um dieses Problem zu reproduzieren:
using System.Net.Mail;

static void Main(string[] args)
{
    SmtpClient client = new SmtpClient("Your mail server");
    client.Credentials = new System.Net.NetworkCredential("User", "Password", "Domain");

    MailMessage msg = new MailMessage("Send From", "Send To", "Large Attachment Mail", "Large Attachment - Test Body"); 
    Attachment attachment = new Attachment(@"<attachment file>");
     msg.Attachments.Add(attachment);
    client.Send(msg);

    msg.Dispose();
    msg = null;
    client = null;
}

Eigenschaften

Artikel-ID: 2183292 - Geändert am: Dienstag, 24. August 2010 - Version: 1.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft .NET Framework 4.0
Keywords: 
kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbmt KB2183292 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 2183292
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns