Outlook drag-and-drop:如何从消息中获取 'Internet Headers'

Outlook drag-and-drop: how to get 'Internet Headers' from message

即使在任何良好的 spam/virus 过滤器之后,也经常收到不需要的消息。

作为辅助墙,我们建议用户检查可疑消息属性 ('internet headers') 以验证真实来源。这个动作,对于non-tech的小伙伴们来说都不容易。

我写了一个简单的应用程序,将消息拖入其中并分析 headers 定位IP地址和来源:显然,如果消息来自你母亲,你知道她不在中国......

如何从消息中获取'internet headers'?那里有隐藏的属性吗?

Private Sub MainForm_DragDrop(sender As Object, e As DragEventArgs) Handles Me.DragDrop
    Dim myOlApp As New Outlook.Application
    Dim myExp As Outlook.Explorer = myOlApp.ActiveExplorer
    Dim myMailItem As Outlook.MailItem = DirectCast(myExp.Selection.Item(1), Outlook.MailItem)
    Dim x = myMailItem.Body
    myExp = Nothing
    myMailItem = Nothing
    myOlApp = Nothing
End Sub

这可以很好地获取 body 和其他数据,如收件人、发件人等,但是没有 属性 公开 'Internet Headers'。

您需要阅读 PR_TRANSPORT_MESSAGE_HEADERS MAPI 属性:

Dim headers As String = myMailItem.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x007D001F")