SmtpClient.Send メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
電子メール メッセージを、配信用 SMTP サーバーに送信します。 これらのメソッドは、メッセージの送信中はブロックします。
オーバーロード
Send(MailMessage) |
指定したメッセージを、配信用 SMTP サーバーに送信します。 |
Send(String, String, String, String) |
指定した電子メール メッセージを、配信用 SMTP サーバーに送信します。 メッセージの差出人、受信者、件名、およびメッセージ本文は、String オブジェクトを使用して指定されます。 |
Send(MailMessage)
- ソース:
- SmtpClient.cs
- ソース:
- SmtpClient.cs
- ソース:
- SmtpClient.cs
指定したメッセージを、配信用 SMTP サーバーに送信します。
public:
void Send(System::Net::Mail::MailMessage ^ message);
public void Send (System.Net.Mail.MailMessage message);
member this.Send : System.Net.Mail.MailMessage -> unit
Public Sub Send (message As MailMessage)
パラメーター
- message
- MailMessage
送信するメッセージを格納した MailMessage。
例外
message
が null
です。
これには SmtpClient 、既に別の送信操作が進行中です。
または
From は null
です。
- または -
To、CC、および Bcc の各プロパティで受信者が指定されていません。
- または -
DeliveryMethod プロパティは Network に設定され、Host は null
です。
- または -
DeliveryMethod プロパティは Network に設定され、Host は空の文字列 ("") と等しくなります。
- または -
DeliveryMethod プロパティが Network に設定され、Port がゼロ、負の値、または 65,535 より大きい値になっています。
このオブジェクトは破棄されました。
SMTP サーバーへの接続に失敗しました。
- または -
認証に失敗しました。
- または -
操作はタイムアウトしました。
- または -
EnableSsl は true
に設定されますが、DeliveryMethod プロパティは SpecifiedPickupDirectory または PickupDirectoryFromIis に設定されます。
- または -
EnableSsl が true,
に設定されていますが、SMTP メール サーバーが EHLO コマンドに対する応答で STARTTLS をアドバタイズしませんでした。
例
次のコード例では、このメソッドの使用方法を示します。
static void CreateTestMessage2( String^ server )
{
String^ to = L"jane@contoso.com";
String^ from = L"ben@contoso.com";
MailMessage^ message = gcnew MailMessage( from,to );
message->Subject = L"Using the new SMTP client.";
message->Body = L"Using this new feature, you can send an email message from an application very easily.";
SmtpClient^ client = gcnew SmtpClient( server );
// Credentials are necessary if the server requires the client
// to authenticate before it will send email on the client's behalf.
client->UseDefaultCredentials = true;
client->Send( message );
client->~SmtpClient();
}
public static void CreateTestMessage2(string server)
{
string to = "jane@contoso.com";
string from = "ben@contoso.com";
MailMessage message = new MailMessage(from, to);
message.Subject = "Using the new SMTP client.";
message.Body = @"Using this new feature, you can send an email message from an application very easily.";
SmtpClient client = new SmtpClient(server);
// Credentials are necessary if the server requires the client
// to authenticate before it will send email on the client's behalf.
client.UseDefaultCredentials = true;
try
{
client.Send(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in CreateTestMessage2(): {0}",
ex.ToString());
}
}
注釈
このメソッドは、電子メールの送信中にブロックします。 タイムアウト値を指定するには、 プロパティを使用して、 Timeout 指定した時間が経過した後にメソッドが確実に返されるようにします。
このメソッドを呼び出す前に Host 、 プロパティと Port プロパティを設定するには、関連するプロパティを設定するか、この情報をコンストラクターに SmtpClient(String, Int32) 渡します。
非同期に送信されるメッセージがある場合は、このメソッドを呼び出すことはできません。
SMTP ホストに資格情報が必要な場合は、このメソッドを呼び出す前に設定する必要があります。 資格情報を指定するには、 または Credentials プロパティを使用しますUseDefaultCredentials。
例外が発生したSmtpException場合は、 プロパティをStatusCodeチェックして、操作が失敗した理由を見つけます。 SmtpExceptionには、操作が失敗した理由を示す内部例外を含めることもできます。
を使用して複数の受信者に電子メールを Send 送信し、SMTP サーバーが一部の受信者を有効として受け入れ、他の受信者を拒否する場合は、 Send 受け入れられた受信者に電子メールを送信し SmtpFailedRecipientsException 、 がスローされます (または SmtpFailedRecipientException 、1 人の受信者のみが拒否された場合は )。 には SmtpFailedRecipientsException 、拒否された受信者の一覧が含まれます。
注意
プロパティが EnableSsl にtrue
設定されていて、SMTP メール サーバーが EHLO コマンドへの応答で STARTTLS をアドバタイズしない場合、 メソッドまたは SendAsync メソッドのSend呼び出しによって がSmtpExceptionスローされます。
適用対象
Send(String, String, String, String)
- ソース:
- SmtpClient.cs
- ソース:
- SmtpClient.cs
- ソース:
- SmtpClient.cs
指定した電子メール メッセージを、配信用 SMTP サーバーに送信します。 メッセージの差出人、受信者、件名、およびメッセージ本文は、String オブジェクトを使用して指定されます。
public:
void Send(System::String ^ from, System::String ^ recipients, System::String ^ subject, System::String ^ body);
public void Send (string from, string recipients, string? subject, string? body);
public void Send (string from, string recipients, string subject, string body);
member this.Send : string * string * string * string -> unit
Public Sub Send (from As String, recipients As String, subject As String, body As String)
パラメーター
例外
これには SmtpClient 、既に別の送信操作が進行中です。
- または -
DeliveryMethod プロパティは Network に設定され、Host は null
です。
- または -
DeliveryMethod プロパティは Network に設定され、Host は空の文字列 ("") と等しくなります。
- または -
DeliveryMethod プロパティが Network に設定され、Port がゼロ、負の値、または 65,535 より大きい値になっています。
このオブジェクトは破棄されました。
SMTP サーバーへの接続に失敗しました。
- または -
認証に失敗しました。
- または -
操作はタイムアウトしました。
- または -
EnableSsl は true
に設定されますが、DeliveryMethod プロパティは SpecifiedPickupDirectory または PickupDirectoryFromIis に設定されます。
- または -
EnableSsl が true,
に設定されていますが、SMTP メール サーバーが EHLO コマンドに対する応答で STARTTLS をアドバタイズしませんでした。
注釈
このメソッドは、電子メールの送信中にブロックします。 タイムアウト値を指定するには、 プロパティを使用して、 Timeout 指定した時間が経過した後にメソッドが確実に返されるようにします。
このメソッドを呼び出す前に Host 、 プロパティと Port プロパティを設定するには、関連するプロパティを設定するか、この情報をコンストラクターに SmtpClient(String, Int32) 渡します。
非同期に送信されるメッセージがある場合は、このメソッドを呼び出すことはできません。
SMTP ホストに資格情報が必要な場合は、このメソッドを呼び出す前に設定する必要があります。 資格情報を指定するには、 または Credentials プロパティを使用しますUseDefaultCredentials。
例外が発生したSmtpException場合は、 プロパティをStatusCodeチェックして、操作が失敗した理由を見つけます。 SmtpExceptionには、操作が失敗した理由を示す内部例外を含めることもできます。
を使用して複数の受信者に電子メールを Send 送信し、SMTP サーバーが一部の受信者を有効として受け入れ、他の受信者を拒否する場合は、 Send 受け入れられた受信者に電子メールを送信し SmtpFailedRecipientsException 、 がスローされます (または SmtpFailedRecipientException 、1 人の受信者のみが拒否された場合は )。 には SmtpFailedRecipientsException 、拒否された受信者の一覧が含まれます。
注意
プロパティが EnableSsl にtrue
設定されていて、SMTP メール サーバーが EHLO コマンドへの応答で STARTTLS をアドバタイズしない場合、 メソッドまたは SendAsync メソッドのSend呼び出しによって がSmtpExceptionスローされます。
適用対象
.NET