SmtpClient.Send SmtpClient.Send SmtpClient.Send SmtpClient.Send Method

定義

電子メール メッセージを、配信用 SMTP サーバーに送信します。Sends an email message to an SMTP server for delivery. これらのメソッドは、メッセージの送信中はブロックします。These methods block while the message is being transmitted.

オーバーロード

Send(MailMessage) Send(MailMessage) Send(MailMessage) Send(MailMessage)

指定したメッセージを、配信用 SMTP サーバーに送信します。Sends the specified message to an SMTP server for delivery.

Send(String, String, String, String) Send(String, String, String, String) Send(String, String, String, String) Send(String, String, String, String)

指定した電子メール メッセージを、配信用 SMTP サーバーに送信します。Sends the specified email message to an SMTP server for delivery. メッセージの差出人、受信者、件名、およびメッセージ本文は、String オブジェクトを使用して指定されます。The message sender, recipients, subject, and message body are specified using String objects.

Send(MailMessage) Send(MailMessage) Send(MailMessage) Send(MailMessage)

指定したメッセージを、配信用 SMTP サーバーに送信します。Sends the specified message to an SMTP server for delivery.

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 MailMessage MailMessage

送信するメッセージを格納した MailMessageA MailMessage that contains the message to send.

例外

この SmtpClient は、SendAsync の呼び出し中です。This SmtpClient has a SendAsync call in progress.

または-or- Fromnullです。From is null.

または-or- ToCC、および Bcc の各プロパティで受信者が指定されていません。There are no recipients specified in To, CC, and Bcc properties.

または-or- DeliveryMethod プロパティは Network に設定され、Hostnull です。DeliveryMethod property is set to Network and Host is null.

または-or- DeliveryMethod プロパティは Network に設定され、Host は空の文字列 ("") と等しくなります。DeliveryMethod property is set to Network and Host is equal to the empty string ("").

または-or- DeliveryMethod プロパティが Network に設定され、Port がゼロ、負の値、または 65,535 より大きい値になっています。DeliveryMethod property is set to Network and Port is zero, a negative number, or greater than 65,535.

このオブジェクトは破棄されました。This object has been disposed.

SMTP サーバーへの接続に失敗しました。The connection to the SMTP server failed.

または-or- 認証に失敗しました。Authentication failed.

または-or- 操作はタイムアウトしました。The operation timed out. または-or- EnableSsltrue に設定されますが、DeliveryMethod プロパティは SpecifiedPickupDirectory または PickupDirectoryFromIis に設定されます。EnableSsl is set to true but the DeliveryMethod property is set to SpecifiedPickupDirectory or PickupDirectoryFromIis.

または-or- EnableSsltrue, に設定されていますが、SMTP メール サーバーが EHLO コマンドに対する応答で STARTTLS をアドバタイズしませんでした。EnableSsl is set to true, but the SMTP mail server did not advertise STARTTLS in the response to the EHLO command.

ToCC、または Bcc 内の 1 人の受信者に、message を配信できませんでした。The message could not be delivered to one of the recipients in To, CC, or Bcc.

ToCC、または Bcc 内の複数の受信者に、message を配信できませんでした。The message could not be delivered to two or more of the recipients in To, CC, or Bcc.

次のコード例では、この方法を示します。The following code example demonstrates using this method.

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() );			  
    }              
}

注釈

このメソッドは、電子メールの送信中にブロックします。This method blocks while the email is transmitted. 使用してタイムアウト値を指定することができます、Timeoutプロパティを指定された時間が経過した後、メソッドを返すことを確認します。You can specify a time-out value using the Timeout property to ensure that the method returns after a specified amount of time elapses.

このメソッドを呼び出す前に、HostPortプロパティする必要がありますいずれかで設定して構成ファイル関連のプロパティを設定するかにこの情報を渡すことによって、SmtpClient(String, Int32)コンス トラクター。Before calling this method, the Host and Port properties must be set either through the configuration files by setting the relevant properties, or by passing this information into the SmtpClient(String, Int32) constructor.

非同期的に送信されるメッセージがある場合は、このメソッドを呼び出すことはできません。You cannot call this method if there is a message being sent asynchronously.

SMTP ホストには、資格情報が必要とする場合は、このメソッドを呼び出す前に設定する必要があります。If the SMTP host requires credentials, you must set them before calling this method. 資格情報を指定するには、使用、UseDefaultCredentialsまたはCredentialsプロパティ。To specify credentials, use the UseDefaultCredentials or Credentials properties.

表示された場合、SmtpException例外、チェック、StatusCode理由、操作を検索するプロパティが失敗しました。If you receive an SmtpException exception, check the StatusCode property to find the reason the operation failed. SmtpException操作に失敗した理由を示す内部例外を含めることもできます。The SmtpException can also contain an inner exception that indicates the reason the operation failed.

電子メールを使用して送信するときにSendに複数の受信者と、SMTP サーバーを有効と一部の受信者を承諾かつ拒否、他のユーザーSend受理された受信者に電子メールを送信し、SmtpFailedRecipientsExceptionがスローされます (またはSmtpFailedRecipientException1 つだけの場合受信者は拒否されます)。When sending email using Send to multiple recipients and the SMTP server accepts some recipients as valid and rejects others, Send sends email to the accepted recipients and then a SmtpFailedRecipientsException is thrown (or a SmtpFailedRecipientException if only one recipient is rejected). ASmtpFailedRecipientsException拒否された受信者の一覧が含まれています。A SmtpFailedRecipientsException contains a list of the recipients that were rejected.

注意

場合、EnableSslプロパティに設定されてtrue、SMTP メール サーバーが、EHLO への応答で STARTTLS コマンドは、その後への呼び出しをアドバタイズしていないと、SendまたはSendAsyncメソッドがスローされます、SmtpExceptionします。If the EnableSsl property is set to true, and the SMTP mail server does not advertise STARTTLS in the response to the EHLO command, then a call to the Send or SendAsync methods will throw an SmtpException.

セキュリティ

SmtpPermission
SMTP サーバーに接続します。to connect to the SMTP server. 関連付けられた列挙体。 ConnectAssociated enumeration: Connect

Send(String, String, String, String) Send(String, String, String, String) Send(String, String, String, String) Send(String, String, String, String)

指定した電子メール メッセージを、配信用 SMTP サーバーに送信します。Sends the specified email message to an SMTP server for delivery. メッセージの差出人、受信者、件名、およびメッセージ本文は、String オブジェクトを使用して指定されます。The message sender, recipients, subject, and message body are specified using String objects.

public:
 void Send(System::String ^ from, System::String ^ to, System::String ^ subject, System::String ^ body);
public void Send (string from, string to, string subject, string body);
member this.Send : string * string * string * string -> unit
Public Sub Send (from As String, to As String, subject As String, body As String)

パラメーター

from
String String String String

メッセージの差出人のアドレス情報を格納している StringA String that contains the address information of the message sender.

recipients
String String String String

メッセージの送信先のアドレスを格納している StringA String that contains the addresses that the message is sent to.

subject
String String String String

メッセージの件名を格納している StringA String that contains the subject line for the message.

body
String String String String

メッセージ本文を格納している StringA String that contains the message body.

例外

fromnullです。from is null.

- または --or- recipientsnullです。recipients is null.

fromEmptyです。from is Empty.

- または --or- recipientsEmptyです。recipients is Empty.

この SmtpClient は、SendAsync の呼び出し中です。This SmtpClient has a SendAsync call in progress.

または-or- DeliveryMethod プロパティは Network に設定され、Hostnull です。DeliveryMethod property is set to Network and Host is null.

または-or- DeliveryMethod プロパティは Network に設定され、Host は空の文字列 ("") と等しくなります。DeliveryMethod property is set to Network and Host is equal to the empty string ("").

または-or- DeliveryMethod プロパティが Network に設定され、Port がゼロ、負の値、または 65,535 より大きい値になっています。DeliveryMethod property is set to Network and Port is zero, a negative number, or greater than 65,535.

このオブジェクトは破棄されました。This object has been disposed.

SMTP サーバーへの接続に失敗しました。The connection to the SMTP server failed.

または-or- 認証に失敗しました。Authentication failed.

または-or- 操作はタイムアウトしました。The operation timed out. または-or- EnableSsltrue に設定されますが、DeliveryMethod プロパティは SpecifiedPickupDirectory または PickupDirectoryFromIis に設定されます。EnableSsl is set to true but the DeliveryMethod property is set to SpecifiedPickupDirectory or PickupDirectoryFromIis.

または-or- EnableSsltrue, に設定されていますが、SMTP メール サーバーが EHLO コマンドに対する応答で STARTTLS をアドバタイズしませんでした。EnableSsl is set to true, but the SMTP mail server did not advertise STARTTLS in the response to the EHLO command.

ToCC、または Bcc 内の 1 人の受信者に、message を配信できませんでした。The message could not be delivered to one of the recipients in To, CC, or Bcc.

ToCC、または Bcc 内の複数の受信者に、message を配信できませんでした。The message could not be delivered to two or more of the recipients in To, CC, or Bcc.

注釈

このメソッドは、電子メールの送信中にブロックします。This method blocks while the email is transmitted. 使用してタイムアウト値を指定することができます、Timeoutプロパティを指定された時間が経過した後、メソッドを返すことを確認します。You can specify a time-out value using the Timeout property to ensure that the method returns after a specified amount of time elapses.

このメソッドを呼び出す前に、HostPortプロパティする必要がありますいずれかで設定して構成ファイル関連のプロパティを設定するかにこの情報を渡すことによって、SmtpClient(String, Int32)コンス トラクター。Before calling this method, the Host and Port properties must be set either through the configuration files by setting the relevant properties, or by passing this information into the SmtpClient(String, Int32) constructor.

非同期的に送信されるメッセージがある場合は、このメソッドを呼び出すことはできません。You cannot call this method if there is a message being sent asynchronously.

SMTP ホストには、資格情報が必要とする場合は、このメソッドを呼び出す前に設定する必要があります。If the SMTP host requires credentials, you must set them before calling this method. 資格情報を指定するには、使用、UseDefaultCredentialsまたはCredentialsプロパティ。To specify credentials, use the UseDefaultCredentials or Credentials properties.

表示された場合、SmtpException例外、チェック、StatusCode理由、操作を検索するプロパティが失敗しました。If you receive an SmtpException exception, check the StatusCode property to find the reason the operation failed. SmtpException操作に失敗した理由を示す内部例外を含めることもできます。The SmtpException can also contain an inner exception that indicates the reason the operation failed.

電子メールを使用して送信するときにSendに複数の受信者と、SMTP サーバーを有効と一部の受信者を承諾かつ拒否、他のユーザーSend受理された受信者に電子メールを送信し、SmtpFailedRecipientsExceptionがスローされます (またはSmtpFailedRecipientException1 つだけの場合受信者は拒否されます)。When sending email using Send to multiple recipients and the SMTP server accepts some recipients as valid and rejects others, Send sends email to the accepted recipients and then a SmtpFailedRecipientsException is thrown (or a SmtpFailedRecipientException if only one recipient is rejected). ASmtpFailedRecipientsException拒否された受信者の一覧が含まれています。A SmtpFailedRecipientsException contains a list of the recipients that were rejected.

注意

場合、EnableSslプロパティに設定されてtrue、SMTP メール サーバーが、EHLO への応答で STARTTLS コマンドは、その後への呼び出しをアドバタイズしていないと、SendまたはSendAsyncメソッドがスローされます、SmtpExceptionします。If the EnableSsl property is set to true, and the SMTP mail server does not advertise STARTTLS in the response to the EHLO command, then a call to the Send or SendAsync methods will throw an SmtpException.

セキュリティ

SmtpPermission
SMTP サーバーに接続します。to connect to the SMTP server. 関連付けられた列挙体。 ConnectAssociated enumeration: Connect

適用対象