我需要一种以编程方式获取Outlook连接状态的方法。
具体来说,如果按住ctrl并单击Outlook systray图标,则将具有连接状态选项。
如果您使用它,它将显示各种Outlook连接状态以进行交换。
我需要获取该数据,但需要对其进行记录或能够以编程方式将其拉出
答案 0 :(得分:0)
好像您对Namespace
或Account
类的ExchangeConnectionMode属性感兴趣。它返回一个OlExchangeConnectionMode
常量,该常量指示托管帐户邮箱的Microsoft Exchange Server的当前连接模式。
如果ExchangeConnectionMode
属性是olOffline
或olDisconnected
,则NameSpace.Offline
属性将返回True
。如果ExchangeConnectionMode
属性是olOnline
,olConnected
或olConnectedHeaders
,则NameSpace.Offline
属性将返回False
。
Sub MarkHighImportance()
Dim myNamespace As Outlook.NameSpace
Dim mpfInbox As Outlook.Folder
Dim obj As Object
Dim ctr As Integer
Dim i As Integer
Set myNamespace = Application.GetNamespace("MAPI")
Set mpfInbox = myNamespace.GetDefaultFolder(olFolderInbox)
ctr = mpfInbox.Items.count
If (myNamespace.ExchangeConnectionMode = olConnectedHeaders) Then
For i = 1 To ctr
Set obj = mpfInbox.Items.Item(i)
If (obj.Importance <> olImportanceHigh And obj.DownloadState = olHeaderOnly) Then
obj.MarkForDownload = olMarkedForDownload
End If
Next
End If
End Sub