SmtpStatusCode Výčet

Definice

Určuje výsledek odeslání e-mailu pomocí SmtpClient třídy .

public enum class SmtpStatusCode
public enum SmtpStatusCode
type SmtpStatusCode = 
Public Enum SmtpStatusCode
Dědičnost
SmtpStatusCode

Pole

BadCommandSequence 503

Příkazy byly odeslány v nesprávném pořadí.

CannotVerifyUserWillAttemptDelivery 252

Zadaný uživatel není místní, ale přijímající služba SMTP zprávu přijala a pokusila se ji doručit. Tento stavový kód je definován v dokumentu RFC 1123, který je k dispozici na adrese https://www.ietf.org.

ClientNotPermitted 454

Klient nebyl ověřen nebo nemá povoleno odesílat poštu pomocí zadaného hostitele SMTP.

CommandNotImplemented 502

Služba SMTP neimplementuje zadaný příkaz.

CommandParameterNotImplemented 504

Služba SMTP neimplementuje zadaný parametr příkazu.

CommandUnrecognized 500

Služba SMTP nerozpozná zadaný příkaz.

ExceededStorageAllocation 552

Zpráva je příliš velká na to, aby se uložila do cílové poštovní schránky.

GeneralFailure -1

Transakce nemohla proběhnout. Tato chyba se zobrazí, když nelze najít zadaného hostitele SMTP.

HelpMessage 214

Služba vrátila zprávu nápovědy.

InsufficientStorage 452

Služba SMTP nemá dostatek úložiště k dokončení požadavku.

LocalErrorInProcessing 451

Služba SMTP nemůže požadavek dokončit. K této chybě může dojít, pokud ip adresu klienta nelze přeložit (to znamená, že zpětné vyhledávání selhalo). Tato chyba se může zobrazit také v případě, že je doména klienta identifikována jako otevřený přenos nebo zdroj nevyžádaného e-mailu (spamu). Podrobnosti najdete v dokumentu RFC 2505, který je k dispozici na adrese https://www.ietf.org.

MailboxBusy 450

Cílová poštovní schránka se používá.

MailboxNameNotAllowed 553

Syntaxe použitá k určení cílové poštovní schránky je nesprávná.

MailboxUnavailable 550

Cílová poštovní schránka nebyla nalezena nebo nebyla přístupná.

MustIssueStartTlsFirst 530

Server SMTP je nakonfigurován tak, aby přijímal pouze připojení TLS, a klient SMTP se pokouší připojit pomocí jiného připojení než TLS. Řešením je, aby uživatel nastavil enableSsl=true na klientovi SMTP.

Ok 250

E-mail byl úspěšně odeslán službě SMTP.

ServiceClosingTransmissionChannel 221

Služba SMTP ukončuje přenosový kanál.

ServiceNotAvailable 421

Služba SMTP není k dispozici. server zavírá přenosový kanál.

ServiceReady 220

Služba SMTP je připravená.

StartMailInput 354

Služba SMTP je připravená k příjmu obsahu e-mailu.

SyntaxError 501

Syntaxe použitá k zadání příkazu nebo parametru je nesprávná.

SystemStatus 211

Stav systému nebo odpověď nápovědy systému.

TransactionFailed 554

Transakce se nezdařila.

UserNotLocalTryAlternatePath 551

Poštovní schránka uživatele není umístěna na přijímajícím serveru. Měli byste znovu odeslat s použitím zadaných informací o adrese.

UserNotLocalWillForward 251

Poštovní schránka uživatele není umístěna na přijímajícím serveru; server přeposílá e-mail.

Příklady

Následující příklad kódu zobrazí chybovou zprávu do konzoly, když SmtpException je vyvolán.

static void CreateMessageWithAttachment3( String^ server, String^ to )
{
   
   // Specify the file to be attached and sent.
   // This example assumes that a file named data.xls exists in the
   // current working directory.
   String^ file = L"data.xls";
   
   // Create a message and set up the recipients.
   MailMessage^ message = gcnew MailMessage( L"ReportMailer@contoso.com",to,L"Quarterly data report",L"See the attached spreadsheet." );
   
   // Create  the file attachment for this email message.
   Attachment^ data = gcnew Attachment("Qtr3.xls");
   
   
   // Add time stamp information for the file.
   ContentDisposition^ disposition = data->ContentDisposition;
   disposition->CreationDate = System::IO::File::GetCreationTime( file );
   disposition->ModificationDate = System::IO::File::GetLastWriteTime( file );
   disposition->ReadDate = System::IO::File::GetLastAccessTime( file );
   
   // Add the file attachment to this email message.
   message->Attachments->Add( data );
   
   //Send the message.
   SmtpClient^ client = gcnew SmtpClient( server );
   
   // Add credentials if the SMTP server requires them.
   client->Credentials = dynamic_cast<ICredentialsByHost^>(CredentialCache::DefaultNetworkCredentials);
   
   // Notify user if an error occurs.
   try
   {
      client->Send( message );
   }
   catch ( SmtpException^ e ) 
   {
      Console::WriteLine( L"Error: {0}", e->StatusCode );
   }
   finally
   {
      data->~Attachment();
      client->~SmtpClient();
   }

}
public static void CreateMessageWithAttachment3(string server, string to)
{
    // Specify the file to be attached and sent.
    // This example assumes that a file named Data.xls exists in the
    // current working directory.
    string file = "data.xls";
    // Create a message and set up the recipients.
    MailMessage message = new MailMessage(
       "ReportMailer@contoso.com",
       to,
       "Quarterly data report",
       "See the attached spreadsheet.");

    // Create  the file attachment for this email message.
    Attachment data = new Attachment("Qtr3.xls");
    // Add time stamp information for the file.
    ContentDisposition disposition = data.ContentDisposition;
    disposition.CreationDate = System.IO.File.GetCreationTime(file);
    disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
    disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
    // Add the file attachment to this email message.
    message.Attachments.Add(data);
    //Send the message.
    SmtpClient client = new SmtpClient(server);
    // Add credentials if the SMTP server requires them.
    client.Credentials = (ICredentialsByHost)CredentialCache.DefaultNetworkCredentials;
    // Notify user if an error occurs.
    try
    {
        client.Send(message);
    }
    catch (SmtpException e)
    {
        Console.WriteLine("Error: {0}", e.StatusCode);
    }
    finally
    {
        data.Dispose();
    }
}

Poznámky

Hodnoty ve výčtu SmtpStatusCode určují hodnoty stavu odpovědi odeslané serverem SMTP (Simple Mail Transfer Protocol). Třídy SmtpException a SmtpFailedRecipientsException obsahují StatusCode vlastnosti, které vracejí SmtpStatusCode hodnoty.

Protokol SMTP je definován v dokumentu RFC 2821, který je k dispozici na adrese https://www.ietf.org.

Platí pro