SmtpStatusCode Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
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.