SmtpClient.SendAsync メソッド (String, String, String, String, Object)
アセンブリ: System (system.dll 内)

Public Sub SendAsync ( _ from As String, _ recipients As String, _ subject As String, _ body As String, _ userToken As Object _ )
Dim instance As SmtpClient Dim from As String Dim recipients As String Dim subject As String Dim body As String Dim userToken As Object instance.SendAsync(from, recipients, subject, body, userToken)
public void SendAsync ( string from, string recipients, string subject, string body, Object userToken )
public: void SendAsync ( String^ from, String^ recipients, String^ subject, String^ body, Object^ userToken )
public void SendAsync ( String from, String recipients, String subject, String body, Object userToken )
public function SendAsync ( from : String, recipients : String, subject : String, body : String, userToken : Object )

例外の種類 | 条件 |
---|---|
ArgumentNullException | from が null 参照 (Visual Basic では Nothing) です。 または recipient が null 参照 (Visual Basic では Nothing) です。 |
ArgumentException | from が Empty です。 または |
InvalidOperationException | この SmtpClient は、SendAsync の呼び出し中です。 または Host が null 参照 (Visual Basic では Nothing) です。 または または Port が 0 です。 |
ObjectDisposedException | |
SmtpException | または または |
SmtpFailedRecipientsException |

電子メールが送信されたとき、またはその操作がキャンセルされたときに通知を受け取るには、SendCompleted イベントにイベント ハンドラを追加します。SendAsyncCancel メソッドを呼び出して、SendAsync 操作をキャンセルできます。
SendAsync を呼び出した後、Send または SendAsync を使用して別の電子メール メッセージを送信する前に、電子メールの伝送が完了するまで待機する必要があります。
このメソッドを呼び出す前に、構成ファイルを使用して関連するプロパティを設定するか、またはこの情報を SmtpClient(String,Int32) コンストラクタに渡して、Host プロパティと Port プロパティを設定する必要があります。
SMTP ホストが資格情報を要求する場合、このメソッドを呼び出す前にこれらを設定する必要があります。資格情報を指定するには、UseDefaultCredentials プロパティまたは Credentials プロパティを使用します。
SmtpException 例外が発生した場合は、StatusCode プロパティをチェックして操作が失敗した理由を確認してください。SmtpException は、操作が失敗した理由を示す内部例外を格納することもできます。
アプリケーションでは、SendCompletedEventHandler デリゲートに渡された Error プロパティを調べることで、サーバー証明書の検証エラーを検出できます。


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


SmtpClient.SendAsync メソッド

名前 | 説明 |
---|---|
SmtpClient.SendAsync (MailMessage, Object) | 指定した電子メール メッセージを、配信用 SMTP サーバーに送信します。このメソッドは、呼び出し元のスレッドをブロックしません。また、呼び出し元は、操作の完了時に呼び出されるメソッドにオブジェクトを渡すことができます。 |
SmtpClient.SendAsync (String, String, String, String, Object) | 電子メール メッセージを、配信用 SMTP サーバーに送信します。メッセージの差出人、受信者、件名、およびメッセージ本文は、String オブジェクトを使用して指定されます。このメソッドは、呼び出し元のスレッドをブロックしません。また、呼び出し元は、操作の完了時に呼び出されるメソッドにオブジェクトを渡すことができます。 |

SmtpClient.SendAsync メソッド (MailMessage, Object)
アセンブリ: System (system.dll 内)

Dim instance As SmtpClient Dim message As MailMessage Dim userToken As Object instance.SendAsync(message, userToken)

例外の種類 | 条件 |
---|---|
ArgumentNullException | MailMessage.From が null 参照 (Visual Basic では Nothing) です。 または MailMessage.To が null 参照 (Visual Basic では Nothing) です。 または message が null 参照 (Visual Basic では Nothing) です。 |
ArgumentOutOfRangeException | |
InvalidOperationException | この SmtpClient は、SendAsync の呼び出し中です。 または Host が null 参照 (Visual Basic では Nothing) です。 または または Port が 0 です。 |
ObjectDisposedException | |
SmtpException | または または |
SmtpFailedRecipientsException |

電子メールが送信されたとき、またはその操作がキャンセルされたときに通知を受け取るには、SendCompleted イベントにイベント ハンドラを追加します。SendAsyncCancel メソッドを呼び出して、SendAsync 操作をキャンセルできます。
SendAsync を呼び出した後、Send または SendAsync を使用して別の電子メール メッセージを送信する前に、電子メールの伝送が完了するまで待機する必要があります。
このメソッドを呼び出す前に、構成ファイルを使用して関連するプロパティを設定するか、またはこの情報を SmtpClient(String,Int32) コンストラクタに渡して、Host と Port を設定する必要があります。
SMTP ホストが資格情報を要求する場合、このメソッドを呼び出す前にこれらを設定する必要があります。資格情報を指定するには、UseDefaultCredentials プロパティまたは Credentials プロパティを使用します。
SmtpException 例外が発生した場合は、StatusCode プロパティをチェックして操作が失敗した理由を確認してください。SmtpException は、操作が失敗した理由を示す内部例外を格納することもできます。
アプリケーションでは、SendCompletedEventHandler デリゲートに渡された Error プロパティを調べることで、サーバー証明書の検証エラーを検出できます。

メソッドの呼び出しについては、次のコード例を参照してください。
using System; using System.Net; using System.Net.Mail; using System.Net.Mime; using System.Threading; using System.ComponentModel; namespace Examples.SmptExamples.Async { public class SimpleAsynchronousExample { static bool mailSent = false; public static void SendCompletedCallback(object sender, AsyncCompletedEventArgs e) { // Get the unique identifier for this asynchronous operation. String token = (string) e.UserState; if (e.Cancelled) { Console.WriteLine("[{0}] Send canceled.", token); } if (e.Error != null) { Console.WriteLine("[{0}] {1}", token, e.Error.ToString()); } else { Console.WriteLine("Message sent."); } mailSent = true; } public static void Main(string[] args) { // Command line argument must the the SMTP host. SmtpClient client = new SmtpClient(args[0]); // Specify the e-mail sender. // Create a mailing address that includes a UTF8 character // in the display name. MailAddress from = new MailAddress("jane@contoso.com", "Jane " + (char)0xD8+ " Clayton", System.Text.Encoding.UTF8); // Set destinations for the e-mail message. MailAddress to = new MailAddress("ben@contoso.com"); // Specify the message content. MailMessage message = new MailMessage(from, to); message.Body = "This is a test e-mail message sent by an application. "; // Include some non-ASCII characters in body and subject. string someArrows = new string(new char[] {'\u2190', '\u2191', '\u2192', '\u2193'}); message.Body += Environment.NewLine + someArrows; message.BodyEncoding = System.Text.Encoding.UTF8; message.Subject = "test message 1" + someArrows; message.SubjectEncoding = System.Text.Encoding.UTF8; // Set the method that is called back when the send operation ends. client.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback); // The userState can be any object that allows your callback // method to identify this send operation. // For this example, the userToken is a string constant. string userState = "test message1"; client.SendAsync(message, userState); Console.WriteLine("Sending message... press c to cancel mail. Press any other key to exit."); string answer = Console.ReadLine(); // If the user canceled the send, and mail hasn't been sent yet, // then cancel the pending operation. if (answer.StartsWith("c") && mailSent == false) { client.SendAsyncCancel(); } // Clean up. message.Dispose(); Console.WriteLine("Goodbye."); } } }
#using <System.dll> using namespace System; using namespace System::Net; using namespace System::Net::Mail; using namespace System::Net::Mime; using namespace System::Threading; using namespace System::ComponentModel; static bool mailSent; static void SendCompletedCallback(Object^ sender, AsyncCompletedEventArgs^ e) { // Get the unique identifier for this asynchronous // operation. String^ token = (String^) e->UserState; if (e->Cancelled) { Console::WriteLine("[{0}] Send canceled.", token); } if (e->Error != nullptr) { Console::WriteLine("[{0}] {1}", token, e->Error->ToString()); } else { Console::WriteLine("Message sent."); } mailSent = true; } int main(array<String^>^ args) { if (args->Length > 1) { // Command line argument must the the SMTP host. SmtpClient^ client = gcnew SmtpClient(args[1]); // Specify the e-mail sender. // Create a mailing address that includes a UTF8 // character in the display name. MailAddress^ from = gcnew MailAddress("jane@contoso.com", "Jane " + (wchar_t)0xD8 + " Clayton", System::Text::Encoding::UTF8); // Set destinations for the e-mail message. MailAddress^ to = gcnew MailAddress("ben@contoso.com"); // Specify the message content. MailMessage^ message = gcnew MailMessage(from, to); message->Body = "This is a test e-mail message sent" + " by an application. "; // Include some non-ASCII characters in body and // subject. String^ someArrows = gcnew String(gcnew array<wchar_t>{L'\u2190', L'\u2191', L'\u2192', L'\u2193'}); message->Body += Environment::NewLine + someArrows; message->BodyEncoding = System::Text::Encoding::UTF8; message->Subject = "test message 1" + someArrows; message->SubjectEncoding = System::Text::Encoding::UTF8; // Set the method that is called back when the send // operation ends. client->SendCompleted += gcnew SendCompletedEventHandler(SendCompletedCallback); // The userState can be any object that allows your // callback method to identify this send operation. // For this example, the userToken is a string constant. String^ userState = "test message1"; client->SendAsync(message, userState); Console::WriteLine("Sending message... press c to" + " cancel mail. Press any other key to exit."); String^ answer = Console::ReadLine(); // If the user canceled the send, and mail hasn't been // sent yet,then cancel the pending operation. if (answer->ToLower()->StartsWith("c") && mailSent == false) { client->SendAsyncCancel(); } // Clean up. delete message; client = nullptr; Console::WriteLine("Goodbye."); } else { Console::WriteLine("Please give SMTP server name!"); } }


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からSmtpClient.SendAsyncを検索する場合は、下記のリンクをクリックしてください。

- SmtpClient.SendAsyncのページへのリンク