VB.NET Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

VB.NET Examples

Bounced Mail
Character Encoding
Digital Certificates
Digital Signatures
Email
FTP
HTML to XML
HTTP
IMAP
Encryption
MHT / HTML Email
PFX
RSA Encryption
S/MIME
Socket
Spider
Tar Archive
Upload
XML
XMP
Zip Compression
Misc

More Examples...
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor

Byte Array
VB.NET FTPS
System.IO

Unreleased...
Service
PPMD
Deflate
Bzip2
LZW
Bz2
DH Key Exchange
DSA
Icon

 

 

 

 

 

 

Reading Unread POP3 Email

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.

Download Chilkat .NET for 2.0 Framework

Download Chilkat .NET for 1.0 / 1.1 Framework

'  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-2007 Chilkat Software, Inc. All Rights Reserved.

Mail Component · XML Parser