Outlook Email watcher : Outlook « Windows « VB.Net Tutorial






Imports System


public class MainClass
   Private Shared WithEvents objOMW As OutlookMessageWatcher
   public Shared Sub Main
        objOMW = New OutlookMessageWatcher()
   End Sub

    Private Shared Sub objOMW_EmailArrived(ByVal From As String, _
            ByVal Subject As String, _
            ByVal Message As Outlook.MailItem) _
            Handles objOMW.EmailArrived
        Console.WriteLine(Subject)
    End Sub

End class

Public Class OutlookMessageWatcher
    Private WithEvents objInboxItems As Outlook.Items
    Private objOutlook As Outlook.Application

    Public Event EmailArrived(ByVal From As String, _
        ByVal Subject As String, _
        ByVal Message As Outlook.MailItem)

    Public Sub New()
        objOutlook = New Outlook.Application()
        objOutlook.Session.Logon(NewSession:=False)
        objInboxItems = objOutlook.Session.GetDefaultFolder (Outlook.OlDefaultFolders.olFolderInbox).Items
    End Sub

    Private Sub objInboxItems_ItemAdd(ByVal Item As Object)Handles objInboxItems.ItemAdd
        Dim objNewMail As Outlook.MailItem
        objNewMail = CType(Item, Outlook.MailItem)
        RaiseEvent EmailArrived(objNewMail.SenderName, objNewMail.Subject, objNewMail)

    End Sub
End Class








24.22.Outlook
24.22.1.Outlook Email watcher