Oprava: chybová zpráva "Chyba při odesílání pošty" při odesílání e-mailové zprávy pomocí aplikace založené na rozhraní.NET Framework 4.0, která používá třídu "System.Net.Mail.SmtpClient" je-li e-mailu je větší než 3 MB

Překlady článku Překlady článku
ID článku: 2183292 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Příznaky

Zvažte následující scénář:
  • Spuštění aplikace založené na rozhraní .NET Framework 4.0. Tato aplikace používáSystem.Net.Mail.SmtpClientTřída odeslat e-mailové zprávy.
  • Přidáte-li přílohu, která splňuje tato pravidla e-mailové zprávy.
    • TransferEncodingnení zadána vlastnost v příloze. Nebo,TransferEncodingvlastnost je určena jakoVe formátu Base 64neboNeznámý.
    • Velikost přílohy je větší než 3 MB.
  • Odeslání e-mailové zprávy.
v tomto scénářiSystem.Net.Mail.SmtpExceptionvýjimek aSystem.IndexOutOfRangeExceptionjsou generovány vnitřní výjimky. Dále se zobrazí následující chybová zpráva:
Selhání odeslání pošty.
Je chybovou zprávu pro vnitřní výjimka:
Index se nacházel mimo hranice pole.

Řešení

Informace o opravě hotfix

Podporovaná oprava hotfix je k dispozici od společnosti Microsoft. Je však určena pouze k opravě problému v tomto článku.. Použijte ji pouze u systémů, které se jedná o tento konkrétní problém.

k vyřešení tohoto problémů, kontaktní technickou podporu společnosti opravu hotfix získat. Úplný seznam telefonních čísel služeb technické podpory společnosti Microsoft a informace o cenách podpory naleznete na následujícím webu společnosti Microsoft:
http://support.microsoft.com/contactus/?ws=support
Poznámka:Ve zvláštních případech, poplatky, které je třeba obvykle zaplatit za telefonní hovory mohou být stornovány, jestliže pracovník technické podpory společnosti Microsoft určí, že konkrétní aktualizace vyřeší váš problém. Podporu se obvykle týkají dalších otázek a problémů, které se netýkají této zvláštní opravy, které se v otázce.

Poznámka:Chcete-li tuto opravu hotfix, můžete také navštívit následující web společnosti Microsoft:
https://Connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=30226

Požadavky

Musíte mít rozhraní .NET Framework 4.0 nainstalován, je možné použít tuto opravu hotfix.

Požadavek na restartování

Není nutné restartovat počítač po instalaci této opravy hotfix, pokud není ohrožený soubor je používán.

Informace o nahrazení opravy hotfix

Tato oprava hotfix nenahrazuje žádné další opravy hotfix.

Informace o souborech

Anglická verze této opravy hotfix má atributy souborů (nebo novější atributy souboru), jsou uvedeny v následující tabulce. Data a časy jednotlivých souborů jsou uvedeny ve formátu UTC (Coordinated Universal Time).. Pokud zobrazíte informace o souboru, bude převedena na místní čas.. Rozdíl mezi místním časem a UTC časemČasové pásmokarty vDatum a časv Ovládacích panelech.
Soubor informací pro všechny - verze x 86 systému Windows XP, Windows Server 2003, systému Windows Vista, systému Windows Server 2008, 7 v systému Windows a Windows Server 2008 R2
Zmenšit tuto tabulkuRozšířit tuto tabulku
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
SetupUi.dll10.0.30319.335295,24813. Července-201006: 36x 86
Setupengine.dll10.0.30319.335809,30413. Července-201006: 36x 86
Soubor Setup.exe10.0.30319.33578,15213. Července-201006: 36x 86
System.dll4.0.30319.3353,482,44013. Července-201011: 48x 86
Soubor informací pro všechny 64bitové verze systému Windows XP, Windows Server 2003, systému Windows Vista, systému Windows Server 2008, 7 v systému Windows a Windows Server 2008 R2 x
Zmenšit tuto tabulkuRozšířit tuto tabulku
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
SetupUi.dll10.0.30319.335295,24813. Července-201006: 36x 86
Setupengine.dll10.0.30319.335809,30413. Července-201006: 36x 86
Soubor Setup.exe10.0.30319.33578,15213. Července-201006: 36x 86
System.dll4.0.30319.3353,482,44013. Července-201011: 48x 86
Informace o souborech pro všechny IA-64bitové verze systému Windows XP, Windows Server 2003, systému Windows Vista, systému Windows Server 2008, 7 v systému Windows a Windows Server 2008 R2
Zmenšit tuto tabulkuRozšířit tuto tabulku
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
SetupUi.dll10.0.30319.335295,24813. Července-201006: 36x 86
Setupengine.dll10.0.30319.335809,30413. Července-201006: 36x 86
Soubor Setup.exe10.0.30319.33578,15213. Července-201006: 36x 86
System.dll4.0.30319.3353,482,44013. Července-201011: 48x 86
System.Resources.dll4.0.30319.335217,44013. Července-201006: 36x 86

Jak potíže obejít

Chcete-li tento problém vyřešit, použijte jednu z následujících metod:
  • ZadatTransferEncodingvlastnost jakoQuotedPrintableneboSevenBit. Jeden z následujících řádků kódu, například přidat do aplikace:
    • attachment.TransferEncoding = System.Net.Mime.TransferEncoding.QuotedPrintable;
    • attachment.TransferEncoding = System.Net.Mime.TransferEncoding.SevenBit;
    Poznámka:Tato metoda nemusí fungovat ve všech případech, protožeSevenBitkódování aQuotedPrintablekódování dojít k poškození přílohy a protožeQuotedPrintablekódování může dvojnásobkem velikosti příloh.
  • Odeslat pouze přílohu, je menší než 3 MB.

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části "Platí pro".

Odkazy

Další informace týkajícíSmtpClienttřídy, naleznete na následujícím webu Microsoft Developer Network (MSDN):
Obecné informace o třídě "SmtpClient"
Další informace týkajícíTransferEncodingvlastnost, naleznete na následujícím webu MSDN:
Obecné informace o vlastnosti "TransferEncoding"
Další informace o terminologii aktualizace softwaru, klepněte na následující číslo článku databáze Microsoft Knowledge Base:
824684Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft

Další informace

Pro reprodukci tohoto problému, spusťte následující kód:
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;
}

Vlastnosti

ID článku: 2183292 - Poslední aktualizace: 24. srpna 2010 - Revize: 1.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft .NET Framework 4.0
Klíčová slova: 
kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbmt KB2183292 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:2183292

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com