A Microsoft Outlook email forum. Outlook Banter

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » Outlook Banter forum » Microsoft Outlook Email Newsgroups » Outlook and VBA
Site Map Home Register Authors List Search Today's Posts Mark Forums Read Web Partners

Header from Outlook Rule



 
 
Thread Tools Search this Thread Display Modes
  #1  
Old May 19th 06, 01:59 AM posted to microsoft.public.outlook.program_vba
Steve A.
external usenet poster
 
Posts: 6
Default Header from Outlook Rule

Greetings

I want to access message.fields to search the internet headers for a message.
I'm using code I have found on the net, and don't understand MAPI or CDO
very well.


I believe the The code fails at GetMessage becuse the objSession is not
initialised properly: Any suggestions?
I have
Function GetCDOItemFromOL(objOLItem As Object) As MAPI.Message
Dim objSession As MAPI.Session
Dim objApp As Outlook.Application
Dim strEntryID As String
Dim strStoreID As String
Set objApp = CreateObject("Outlook.Application")
strEntryID = objOLItem.EntryID
strStoreID = objOLItem.Parent.StoreID
objSession = CreateObject("MAPI.Session")
objSession.Logon , , False, False
Set GetCDOItemFromOL = objSession.GetMessage(strEntryID, strStoreID)
objSession.Logoff
Set objSession = Nothing
End Function

Sub RuleScript(MyMail As MailItem)

Dim strID As String
Dim olNS As Outlook.NameSpace
Dim olMail As Outlook.MailItem

Dim objCDOMsg As MAPI.Message


Dim InternetHeaders As String
Const CdoPR_TRANSPORT_MESSAGE_HEADERS = &H7D001E

Set objCDOMsg = GetCDOItemFromOL(MyMail)
InternetHeaders = objCDOMsg.Fields(CdoPR_TRANSPORT_MESSAGE_HEADERS)
MsgBox "Mail message arrived Internet Headers Are : " & InternetHeaders
Set objCDOMsg = Nothing
Set olMail = Nothing
Set olNS = Nothing
End Sub
  #2  
Old May 19th 06, 06:30 AM posted to microsoft.public.outlook.program_vba
Michael Bauer
external usenet poster
 
Posts: 435
Default Header from Outlook Rule

Am Thu, 18 May 2006 16:59:02 -0700 schrieb Steve A.:

Please donīt call InternetHeaders, but InternetHeaders.Value. Why do you
know that 'objSession is not initialised properly'?

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Greetings

I want to access message.fields to search the internet headers for a

message.
I'm using code I have found on the net, and don't understand MAPI or CDO
very well.


I believe the The code fails at GetMessage becuse the objSession is not
initialised properly: Any suggestions?
I have
Function GetCDOItemFromOL(objOLItem As Object) As MAPI.Message
Dim objSession As MAPI.Session
Dim objApp As Outlook.Application
Dim strEntryID As String
Dim strStoreID As String
Set objApp = CreateObject("Outlook.Application")
strEntryID = objOLItem.EntryID
strStoreID = objOLItem.Parent.StoreID
objSession = CreateObject("MAPI.Session")
objSession.Logon , , False, False
Set GetCDOItemFromOL = objSession.GetMessage(strEntryID, strStoreID)
objSession.Logoff
Set objSession = Nothing
End Function

Sub RuleScript(MyMail As MailItem)

Dim strID As String
Dim olNS As Outlook.NameSpace
Dim olMail As Outlook.MailItem

Dim objCDOMsg As MAPI.Message


Dim InternetHeaders As String
Const CdoPR_TRANSPORT_MESSAGE_HEADERS = &H7D001E

Set objCDOMsg = GetCDOItemFromOL(MyMail)
InternetHeaders = objCDOMsg.Fields(CdoPR_TRANSPORT_MESSAGE_HEADERS)
MsgBox "Mail message arrived Internet Headers Are : " & InternetHeaders
Set objCDOMsg = Nothing
Set olMail = Nothing
Set olNS = Nothing
End Sub

  #3  
Old May 19th 06, 08:17 AM posted to microsoft.public.outlook.program_vba
Steve A.
external usenet poster
 
Posts: 6
Default Header from Outlook Rule

Michael, thnaks for your assistance.

Function GetCDOItemFromOL shows message 42 but not 52 ( see msgbox code
below)
There is no exception or error message but I presume the function silently
returns because
objSession = CreateObject("MAPI.Session")
causes an error

MsgBox "Mail message arrived 42"
objSession = CreateObject("MAPI.Session")
MsgBox "Mail message arrived 52"

"Michael Bauer" wrote:

Am Thu, 18 May 2006 16:59:02 -0700 schrieb Steve A.:

Please donÂīt call InternetHeaders, but InternetHeaders.Value. Why do you
know that 'objSession is not initialised properly'?

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Greetings

I want to access message.fields to search the internet headers for a

message.
I'm using code I have found on the net, and don't understand MAPI or CDO
very well.


I believe the The code fails at GetMessage becuse the objSession is not
initialised properly: Any suggestions?
I have
Function GetCDOItemFromOL(objOLItem As Object) As MAPI.Message
Dim objSession As MAPI.Session
Dim objApp As Outlook.Application
Dim strEntryID As String
Dim strStoreID As String
Set objApp = CreateObject("Outlook.Application")
strEntryID = objOLItem.EntryID
strStoreID = objOLItem.Parent.StoreID
objSession = CreateObject("MAPI.Session")
objSession.Logon , , False, False
Set GetCDOItemFromOL = objSession.GetMessage(strEntryID, strStoreID)
objSession.Logoff
Set objSession = Nothing
End Function

Sub RuleScript(MyMail As MailItem)

Dim strID As String
Dim olNS As Outlook.NameSpace
Dim olMail As Outlook.MailItem

Dim objCDOMsg As MAPI.Message


Dim InternetHeaders As String
Const CdoPR_TRANSPORT_MESSAGE_HEADERS = &H7D001E

Set objCDOMsg = GetCDOItemFromOL(MyMail)
InternetHeaders = objCDOMsg.Fields(CdoPR_TRANSPORT_MESSAGE_HEADERS)
MsgBox "Mail message arrived Internet Headers Are : " & InternetHeaders
Set objCDOMsg = Nothing
Set olMail = Nothing
Set olNS = Nothing
End Sub


  #4  
Old May 19th 06, 08:23 AM posted to microsoft.public.outlook.program_vba
Steve A.
external usenet poster
 
Posts: 6
Default Header from Outlook Rule

Michael
On Error GoTo eh
eh:
If Err.Number 0 Then
MsgBox "Connection error: " & Err.Number & " " & Err.Description
Err.Clear
Exit Function
End If

Gives the following message
Connection error: 91 Object variable or With block variable not set


"Michael Bauer" wrote:

Am Thu, 18 May 2006 16:59:02 -0700 schrieb Steve A.:

Please donÂīt call InternetHeaders, but InternetHeaders.Value. Why do you
know that 'objSession is not initialised properly'?

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Greetings

I want to access message.fields to search the internet headers for a

message.
I'm using code I have found on the net, and don't understand MAPI or CDO
very well.


I believe the The code fails at GetMessage becuse the objSession is not
initialised properly: Any suggestions?
I have
Function GetCDOItemFromOL(objOLItem As Object) As MAPI.Message
Dim objSession As MAPI.Session
Dim objApp As Outlook.Application
Dim strEntryID As String
Dim strStoreID As String
Set objApp = CreateObject("Outlook.Application")
strEntryID = objOLItem.EntryID
strStoreID = objOLItem.Parent.StoreID
objSession = CreateObject("MAPI.Session")
objSession.Logon , , False, False
Set GetCDOItemFromOL = objSession.GetMessage(strEntryID, strStoreID)
objSession.Logoff
Set objSession = Nothing
End Function

Sub RuleScript(MyMail As MailItem)

Dim strID As String
Dim olNS As Outlook.NameSpace
Dim olMail As Outlook.MailItem

Dim objCDOMsg As MAPI.Message


Dim InternetHeaders As String
Const CdoPR_TRANSPORT_MESSAGE_HEADERS = &H7D001E

Set objCDOMsg = GetCDOItemFromOL(MyMail)
InternetHeaders = objCDOMsg.Fields(CdoPR_TRANSPORT_MESSAGE_HEADERS)
MsgBox "Mail message arrived Internet Headers Are : " & InternetHeaders
Set objCDOMsg = Nothing
Set olMail = Nothing
Set olNS = Nothing
End Sub


  #5  
Old May 19th 06, 10:10 AM posted to microsoft.public.outlook.program_vba
Michael Bauer
external usenet poster
 
Posts: 435
Default Header from Outlook Rule

Am Thu, 18 May 2006 23:23:01 -0700 schrieb Steve A.:

ok, I assume that you donīt have CDO installed. Itīs an optional package
from your Outlook or Office CD.

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Michael
On Error GoTo eh
eh:
If Err.Number 0 Then
MsgBox "Connection error: " & Err.Number & " " & Err.Description
Err.Clear
Exit Function
End If

Gives the following message
Connection error: 91 Object variable or With block variable not set


"Michael Bauer" wrote:

Am Thu, 18 May 2006 16:59:02 -0700 schrieb Steve A.:

Please donīt call InternetHeaders, but InternetHeaders.Value. Why do you
know that 'objSession is not initialised properly'?

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Greetings

I want to access message.fields to search the internet headers for a

message.
I'm using code I have found on the net, and don't understand MAPI or CDO
very well.


I believe the The code fails at GetMessage becuse the objSession is not
initialised properly: Any suggestions?
I have
Function GetCDOItemFromOL(objOLItem As Object) As MAPI.Message
Dim objSession As MAPI.Session
Dim objApp As Outlook.Application
Dim strEntryID As String
Dim strStoreID As String
Set objApp = CreateObject("Outlook.Application")
strEntryID = objOLItem.EntryID
strStoreID = objOLItem.Parent.StoreID
objSession = CreateObject("MAPI.Session")
objSession.Logon , , False, False
Set GetCDOItemFromOL = objSession.GetMessage(strEntryID, strStoreID)
objSession.Logoff
Set objSession = Nothing
End Function

Sub RuleScript(MyMail As MailItem)

Dim strID As String
Dim olNS As Outlook.NameSpace
Dim olMail As Outlook.MailItem

Dim objCDOMsg As MAPI.Message


Dim InternetHeaders As String
Const CdoPR_TRANSPORT_MESSAGE_HEADERS = &H7D001E

Set objCDOMsg = GetCDOItemFromOL(MyMail)
InternetHeaders = objCDOMsg.Fields(CdoPR_TRANSPORT_MESSAGE_HEADERS)
MsgBox "Mail message arrived Internet Headers Are : " & InternetHeaders
Set objCDOMsg = Nothing
Set olMail = Nothing
Set olNS = Nothing
End Sub


  #6  
Old May 19th 06, 10:55 AM posted to microsoft.public.outlook.program_vba
Steve A.
external usenet poster
 
Posts: 6
Default Header from Outlook Rule


Michael thanks you but

Visual Basic Tools - References includes Micrososft CDO 1.21 Library which
is ticked and
CDO.DLL is on my system , so I think this means that it is installed.



"Michael Bauer" wrote:

Am Thu, 18 May 2006 23:23:01 -0700 schrieb Steve A.:

ok, I assume that you donÂīt have CDO installed. ItÂīs an optional package
from your Outlook or Office CD.

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Michael
On Error GoTo eh
eh:
If Err.Number 0 Then
MsgBox "Connection error: " & Err.Number & " " & Err.Description
Err.Clear
Exit Function
End If

Gives the following message
Connection error: 91 Object variable or With block variable not set


"Michael Bauer" wrote:

Am Thu, 18 May 2006 16:59:02 -0700 schrieb Steve A.:

Please donÂīt call InternetHeaders, but InternetHeaders.Value. Why do you
know that 'objSession is not initialised properly'?

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Greetings

I want to access message.fields to search the internet headers for a
message.
I'm using code I have found on the net, and don't understand MAPI or CDO
very well.


I believe the The code fails at GetMessage becuse the objSession is not
initialised properly: Any suggestions?
I have
Function GetCDOItemFromOL(objOLItem As Object) As MAPI.Message
Dim objSession As MAPI.Session
Dim objApp As Outlook.Application
Dim strEntryID As String
Dim strStoreID As String
Set objApp = CreateObject("Outlook.Application")
strEntryID = objOLItem.EntryID
strStoreID = objOLItem.Parent.StoreID
objSession = CreateObject("MAPI.Session")
objSession.Logon , , False, False
Set GetCDOItemFromOL = objSession.GetMessage(strEntryID, strStoreID)
objSession.Logoff
Set objSession = Nothing
End Function

Sub RuleScript(MyMail As MailItem)

Dim strID As String
Dim olNS As Outlook.NameSpace
Dim olMail As Outlook.MailItem

Dim objCDOMsg As MAPI.Message


Dim InternetHeaders As String
Const CdoPR_TRANSPORT_MESSAGE_HEADERS = &H7D001E

Set objCDOMsg = GetCDOItemFromOL(MyMail)
InternetHeaders = objCDOMsg.Fields(CdoPR_TRANSPORT_MESSAGE_HEADERS)
MsgBox "Mail message arrived Internet Headers Are : " & InternetHeaders
Set objCDOMsg = Nothing
Set olMail = Nothing
Set olNS = Nothing
End Sub


  #7  
Old May 19th 06, 01:52 PM posted to microsoft.public.outlook.program_vba
Michael Bauer
external usenet poster
 
Posts: 435
Default Header from Outlook Rule

Am Fri, 19 May 2006 01:55:02 -0700 schrieb Steve A.:

The last thing I could think of why CreateObject("MAPI.Session") fails is
that thereīs some kind of a script blocker (Norton Anti Virus)?

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Michael thanks you but

Visual Basic Tools - References includes Micrososft CDO 1.21 Library

which
is ticked and
CDO.DLL is on my system , so I think this means that it is installed.



"Michael Bauer" wrote:

Am Thu, 18 May 2006 23:23:01 -0700 schrieb Steve A.:

ok, I assume that you donīt have CDO installed. Itīs an optional package
from your Outlook or Office CD.

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Michael
On Error GoTo eh
eh:
If Err.Number 0 Then
MsgBox "Connection error: " & Err.Number & " " & Err.Description
Err.Clear
Exit Function
End If

Gives the following message
Connection error: 91 Object variable or With block variable not set


"Michael Bauer" wrote:

Am Thu, 18 May 2006 16:59:02 -0700 schrieb Steve A.:

Please donīt call InternetHeaders, but InternetHeaders.Value. Why do

you
know that 'objSession is not initialised properly'?

--
Viele Gruesse / Best regards
Michael Bauer - MVP Outlook
-- www.vbOffice.net --


Greetings

I want to access message.fields to search the internet headers for a
message.
I'm using code I have found on the net, and don't understand MAPI or

CDO
very well.


I believe the The code fails at GetMessage becuse the objSession is

not
initialised properly: Any suggestions?
I have
Function GetCDOItemFromOL(objOLItem As Object) As MAPI.Message
Dim objSession As MAPI.Session
Dim objApp As Outlook.Application
Dim strEntryID As String
Dim strStoreID As String
Set objApp = CreateObject("Outlook.Application")
strEntryID = objOLItem.EntryID
strStoreID = objOLItem.Parent.StoreID
objSession = CreateObject("MAPI.Session")
objSession.Logon , , False, False
Set GetCDOItemFromOL = objSession.GetMessage(strEntryID,

strStoreID)
objSession.Logoff
Set objSession = Nothing
End Function

Sub RuleScript(MyMail As MailItem)

Dim strID As String
Dim olNS As Outlook.NameSpace
Dim olMail As Outlook.MailItem

Dim objCDOMsg As MAPI.Message


Dim InternetHeaders As String
Const CdoPR_TRANSPORT_MESSAGE_HEADERS = &H7D001E

Set objCDOMsg = GetCDOItemFromOL(MyMail)
InternetHeaders = objCDOMsg.Fields(CdoPR_TRANSPORT_MESSAGE_HEADERS)
MsgBox "Mail message arrived Internet Headers Are : " &

InternetHeaders
Set objCDOMsg = Nothing
Set olMail = Nothing
Set olNS = Nothing
End Sub


 




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
mail filter rule based on mail header field volker.badziong Outlook - Installation 4 June 16th 06 11:45 AM
I can't download email only header in Outlook Sandra JI Outlook - General Queries 1 May 5th 06 06:23 PM
printing name header in outlook 2000 emails djeanes Outlook - General Queries 1 February 15th 06 07:57 PM
Configure Outlook attachment icon to display in email header Jean-Claude Outlook - Installation 1 February 6th 06 07:30 AM
How can I change the content of my outlook e mail message header? jggome Outlook - Using Contacts 1 January 26th 06 04:32 AM


All times are GMT +1. The time now is 08:25 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.Search Engine Friendly URLs by vBSEO 2.4.0
Copyright Đ2004-2025 Outlook Banter.
The comments are property of their posters.