VB.NET Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

VB.NET Examples

Bounced Mail
Bz2
Character Encoding
CSV
Digital Certificates
Digital Signatures
Email
FTP
HTML to XML
HTTP
IMAP
Encryption
MHT / HTML Email
POP3
PFX
RSA
S/MIME
SMTP
Socket
Spider
SSH
SSH Tunnel
SSH Key
SFTP
Tar Archive
Upload
XML
XMP
Zip Compression
Misc

More Examples...
Email Object
DKIM / DomainKey
NTLM
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
Bzip2
LZW

Byte Array
VB.NET FTPS
System.IO

 

 

 

 

 

 

Reading Unread POP3 Email

Download Chilkat .NET for 2.0 / 3.5 Framework

Download Chilkat .NET for 1.0 / 1.1 Framework

The POP3 protocol does not provide the ability to ask the server which emails are "unread". Furthermore, a pure POP3 server does not even keep this information. Some servers, such as Exchange Server, expose both POP3 and IMAP interfaces. In these cases, information about read/unread status exists on the server, but it is only available via the IMAP protocol. Email clients such as Outlook and Thunderbird keep read/unread information on the client computer. This example demonstrates how UIDLs can be saved to track and read "unread" email.

'  The mailman object is used for receiving (POP3)
'  and sending (SMTP) email.
Dim mailman As New Chilkat.MailMan()

'  Any string argument automatically begins the 30-day trial.
Dim success As Boolean
success = mailman.UnlockComponent("30-day trial")
If (success <> true) Then
    MsgBox("Component unlock failed")
    Exit Sub
End If


'  Set the POP3 server's hostname
mailman.MailHost = "mail.chilkatsoft.com"

'  Set the POP3 login/password.
mailman.PopUsername = "***"
mailman.PopPassword = "***"

'  We're keeping a list of already-seen UIDLs in a text file:
'  If this is the first time you're running this example,
'  create an empty text file named "seenUidls.txt"
Dim saSeenUidls As New Chilkat.StringArray()
success = saSeenUidls.LoadFromFile("seenUidls.txt")
If (success <> true) Then
    MsgBox("failed to load seenUidls.txt")
    Exit Sub
End If


'  Get the complete list of UIDLs on the mail server.
Dim saUidls As Chilkat.StringArray
saUidls = mailman.GetUidls()

If (saUidls Is Nothing ) Then
    MsgBox(mailman.LastErrorText)
    Exit Sub
End If


'  We don't have set operators (yet) on the StringArray object,
'  so create a new string array object (it's an object, not an actual array)
'  and add the UIDLs from saUidls that aren't already seen.
Dim saUnseenUidls As New Chilkat.StringArray()

Dim i As Long
Dim n As Long
n = saUidls.Count
For i = 0 To n - 1
    If (saSeenUidls.Contains(saUidls.GetString(i)) <> true) Then
        saUnseenUidls.Append(saUidls.GetString(i))
    End If

Next


If (saUnseenUidls.Count = 0) Then
    MsgBox("No unseen emails!")

    Exit Sub
End If


'  Download in full the unseen emails:
Dim bundle As Chilkat.EmailBundle

bundle = mailman.FetchMultiple(saUnseenUidls)
If (bundle Is Nothing ) Then
    MsgBox(mailman.LastErrorText)

    Exit Sub
End If


Dim email As Chilkat.Email
For i = 0 To bundle.MessageCount - 1
    email = bundle.GetEmail(i)
    TextBox1.Text = TextBox1.Text & email.From & vbCrLf
    TextBox1.Refresh()
    TextBox1.Text = TextBox1.Text & email.Subject & vbCrLf
    TextBox1.Refresh()
    TextBox1.Text = TextBox1.Text & "----" & vbCrLf
    TextBox1.Refresh()

Next

'  We've seen all the emails, save saUidls to "seenUidls.txt"
saUidls.SaveToFile("seenUidls.txt")


 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.

Mail Component · XML Parser