SmtpStatusCode Enumeração
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Especifica o resultado do envio de email usando a classe SmtpClient.
public enum class SmtpStatusCode
public enum SmtpStatusCode
type SmtpStatusCode =
Public Enum SmtpStatusCode
- Herança
Campos
| Nome | Valor | Description |
|---|---|---|
| GeneralFailure | -1 | A transação não pôde ocorrer. Você receberá esse erro quando o host SMTP especificado não puder ser encontrado. |
| SystemStatus | 211 | Um status do sistema ou resposta da Ajuda do sistema. |
| HelpMessage | 214 | Uma mensagem de Ajuda foi retornada pelo serviço. |
| ServiceReady | 220 | O serviço SMTP está pronto. |
| ServiceClosingTransmissionChannel | 221 | O serviço SMTP está fechando o canal de transmissão. |
| Ok | 250 | O email foi enviado com êxito para o serviço SMTP. |
| UserNotLocalWillForward | 251 | A caixa de correio do usuário não está localizada no servidor receptor; o servidor encaminha o email. |
| CannotVerifyUserWillAttemptDelivery | 252 | O usuário especificado não é local, mas o serviço SMTP receptor aceitou a mensagem e tentou entregá-la. Esse código de status é definido no RFC 1123, que está disponível em https://www.ietf.org. |
| StartMailInput | 354 | O serviço SMTP está pronto para receber o conteúdo do email. |
| ServiceNotAvailable | 421 | O serviço SMTP não está disponível; o servidor está fechando o canal de transmissão. |
| MailboxBusy | 450 | A caixa de correio de destino está em uso. |
| LocalErrorInProcessing | 451 | O serviço SMTP não pode concluir a solicitação. Esse erro poderá ocorrer se o endereço IP do cliente não puder ser resolvido (ou seja, uma pesquisa inversa falhou). Você também poderá receber esse erro se o domínio do cliente tiver sido identificado como uma retransmissão aberta ou fonte para email não solicitado (spam). Para obter detalhes, consulte RFC 2505, que está disponível em https://www.ietf.org. |
| InsufficientStorage | 452 | O serviço SMTP não tem armazenamento suficiente para concluir a solicitação. |
| ClientNotPermitted | 454 | O cliente não foi autenticado ou não tem permissão para enviar emails usando o host SMTP especificado. |
| CommandUnrecognized | 500 | O serviço SMTP não reconhece o comando especificado. |
| SyntaxError | 501 | A sintaxe usada para especificar um comando ou parâmetro está incorreta. |
| CommandNotImplemented | 502 | O serviço SMTP não implementa o comando especificado. |
| BadCommandSequence | 503 | Os comandos foram enviados na sequência incorreta. |
| CommandParameterNotImplemented | 504 | O serviço SMTP não implementa o parâmetro de comando especificado. |
| MustIssueStartTlsFirst | 530 | O servidor SMTP está configurado para aceitar apenas conexões TLS e o cliente SMTP está tentando se conectar usando uma conexão não TLS. A solução é que o usuário defina EnableSsl=true no cliente SMTP. |
| MailboxUnavailable | 550 | A caixa de correio de destino não foi encontrada ou não pôde ser acessada. |
| UserNotLocalTryAlternatePath | 551 | A caixa de correio do usuário não está localizada no servidor receptor. Você deve reenviar usando as informações de endereço fornecidas. |
| ExceededStorageAllocation | 552 | A mensagem é muito grande para ser armazenada na caixa de correio de destino. |
| MailboxNameNotAllowed | 553 | A sintaxe usada para especificar a caixa de correio de destino está incorreta. |
| TransactionFailed | 554 | Falha na transação. |
Exemplos
O exemplo de código a seguir exibe uma mensagem de erro no console quando um SmtpException é lançado.
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();
}
}
Comentários
Os valores na SmtpStatusCode enumeração especificam valores de status de resposta enviados por um servidor SMTP (Simple Mail Transfer Protocol). As SmtpException classes e as SmtpFailedRecipientsException classes contêm StatusCode propriedades que retornam SmtpStatusCode valores.
O SMTP é definido no RFC 2821 disponível em https://www.ietf.org.