Private Sub getMessages(ByVal sender As Object)
' サーバーとアカウントの情報を設定します。
imap1.Session.RemoteEndPoint = New Dart.Mail.IPEndPoint(myServer, Imap.GetDefaultPort(imap1.Session))
imap1.Session.Username = myUsername
imap1.Session.Password = myPassword
' 接続してアカウントにログインします。
imap1.Connect()
imap1.Authenticate()
' 取得するメッセージを含むメールボックスを開きます。
imap1.SelectedMailbox = imap1.Mailboxes("INBOX")
' メッセージを保存するフォルダーを指定します。
Dim messageFolder As String = Application.StartupPath & "\messages"
' アカウントのすべてのメッセージをダウンロードしてディスクに保存します。
For Each imapMessage As ImapMessage In imap1.SelectedMailbox.ToArray()
imapMessage.Get()
imapMessage.Message.Save(messageFolder & "\" & imapMessage.Uid & ".eml")
Next imapMessage
' セッションから適切にログアウトします。
imap1.Close()
End Sub
Private Sub imap1_Progress(ByVal sender As Object, ByVal e As ImapProgressEventArgs) Handles imap1.Progress
' メッセージの送信状況に従ってプログレスバーを更新します。
progressBar1.Value = If(e.Final, 0, CInt((e.Position * 100) \ e.Length))
End Sub