2022-02-17 16:33:17 +01:00

73 lines
2.7 KiB
VB.net

Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Messaging
Imports Limilabs.Mail
Public Class frmEmail
Private Logconfig As LogConfig
Private Email As Email2
Private Sub frmEmail_Load(sender As Object, e As EventArgs) Handles Me.Load
Logconfig = New LogConfig(LogConfig.PathType.Temp, ProductName:="TestGUI.IMAP") With {
.Debug = True
}
Email = New Email2(Logconfig)
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Using oClient = Email.New_IMAPConnection(txtServer.Text, txtUser.Text, txtPassword.Text, Email2.EmailSecurity.SSL)
Dim oResult = Email.Test_IMAPLogin(oClient, "Inbox")
If oResult = True Then
AddLog($"Connection to {txtServer.Text} successful.")
Else
AddLog($"Connection to {txtServer.Text} failed!")
End If
End Using
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Using oClient = Email.New_IMAPConnection(txtServer.Text, txtUser.Text, txtPassword.Text, Email2.EmailSecurity.SSL)
Dim oMessages = Email.Get_IMAPMessages(oClient, "Inbox")
AddLog($"Found {oMessages.Count} Messages!")
For Each oMessage In oMessages
AddLog(oMessage.MessageID)
Next
End Using
End Sub
Private Sub AddLog(pMessage)
ListBox1.Items.Add(pMessage)
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Using oClient = Email.New_IMAPConnection(txtServer.Text, txtUser.Text, txtPassword.Text, Email2.EmailSecurity.SSL)
Dim oMessageId As String = txtMessageID.Text
Dim oMail As IMail = Email.Get_IMAPMessage(oClient, oMessageId, "Inbox")
Dim oFilename As String = IO.Path.GetTempFileName
oMail.Save(oFilename)
AddLog($"Mail saved to {oFilename}")
Dim oEmailTempPath = Email.Remove_AttachmentsFromEmail(oFilename)
AddLog($"Mail without attachments saved to {oEmailTempPath}")
Dim oAttachments As List(Of String) = Email.Save_AttachmentsToDisk(oFilename)
For Each oAttachment In oAttachments
AddLog($"Attachmen saved to {oAttachment}")
Next
End Using
End Sub
Private Sub ListBox1_SelectedValueChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedValueChanged
txtMessageID.Text = ListBox1.SelectedItem
End Sub
Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
txtMessageID.Text = ListBox1.SelectedItem
End Sub
End Class