public event AsyncCompletedEventHandler AuthenticateCompleted
Asynchronously connect to a POP3 server and list recent messages.
using System; using System.Text; using ComponentPro.Net.Mail; using ComponentPro; ... // Create a new instance. Pop3 client = new Pop3(); // Connect to the POP3 server asynchronously. await client.ConnectAsync("myserver"); // Or you can specify the POP3 port with // client.ConnectAsync("myserver", 110); // Authenticate the user asynchronously. await client.AuthenticateAsync("userName", "password"); // Do something here... StringBuilder sb = new StringBuilder(); Pop3MessageCollection list = client.ListMessages(Pop3EnvelopeParts.Size | Pop3EnvelopeParts.UniqueId); for (int i = 0; i < list.Count; i++) { sb.AppendFormat("{0} - {1}\r\n", i + 1, list[i].UniqueId); } Console.WriteLine(sb.ToString()); // ... // Disconnect asynchronously. await client.DisconnectAsync(); // ...
Asynchronously connect to a POP3 server and list recent messages.
using System; using System.ComponentModel; using System.Text; using ComponentPro; using ComponentPro.Net.Mail; ... public void DoAsyncConnect() { // Create a new instance. Pop3 client = new Pop3(); client.ConnectCompleted += client_ConnectCompleted; client.AuthenticateCompleted += client_AuthenticateCompleted; client.DisconnectCompleted += client_DisconnectCompleted; // Connect to the POP3 server asynchronously. client.ConnectAsync("myserver"); // Or you can specify the POP3 port with // client.ConnectAsync("myserver", 110); // Your code here // ... } void client_ConnectCompleted(object sender, ExtendedAsyncCompletedEventArgs<string> e) { Pop3 client = (Pop3)sender; if (e.Error != null) { Console.WriteLine("Error: " + e.Error.ToString()); return; } // Authenticate the user asynchronously. client.AuthenticateAsync("userName", "password"); } void client_AuthenticateCompleted(object sender, AsyncCompletedEventArgs e) { Pop3 client = (Pop3)sender; if (e.Error != null) { Console.WriteLine("Error: " + e.Error.ToString()); return; } // Do something here... StringBuilder sb = new StringBuilder(); Pop3MessageCollection list = client.ListMessages(Pop3EnvelopeParts.Size | Pop3EnvelopeParts.UniqueId); for (int i = 0; i < list.Count; i++) { sb.AppendFormat("{0} - {1}\r\n", i + 1, list[i].UniqueId); } Console.WriteLine(sb.ToString()); // ... // Disconnect asynchronously. client.DisconnectAsync(); } void client_DisconnectCompleted(object sender, ExtendedAsyncCompletedEventArgs<string> e) { if (e.Error != null) Console.WriteLine("Error: " + e.Error.ToString()); }