如何获取组收件箱中所有颜色类别的列表。我知道如何在msgbox中打印出#34; MAPI"命名空间中所有类别的列表。但这些与我的群组收件箱中的不同。我怎样才能获得/打印后者?
以下代码摘自Microsoft的网站:
Private Sub ListCategoryColors()
Dim objNameSpace As NameSpace
Dim objCategory As Category
Dim strOutput As String
' Obtain a NameSpace object reference.
Set objNameSpace = Application.GetNamespace("MAPI")
' Check if the Categories collection for the Namespace
' contains one or more Category objects.
If objNameSpace.Categories.Count > 0 Then
' Enumerate the Categories collection, checking
' the value of the Color property for
' each Category object.
For Each objCategory In objNameSpace.Categories
' Add the name of the Category object to
' the output string.
strOutput = strOutput & objCategory.Name
' Add information about the assigned color
' to the output string.
Select Case objCategory.Color
Case Else
strOutput = strOutput & ": Unknown" & vbCrLf
End Select
Next
End If
' Display the output string.
MsgBox strOutput
' Clean up.
Set objCategory = Nothing
Set objNameSpace = Nothing
End Sub
答案 0 :(得分:0)
类别存储在隐藏邮件中,收件箱文件夹中的邮件类别为“IPM.Configuration.CategoryList” - 您可以在OutlookSpy中看到它:转到收件箱文件夹,单击IMAPIFolder按钮转到“关联内容”选项卡,双击PR_MESSAGE_CLASS =“IPM.Configuration.CategoryList”消息,找到PR_ROAMING_XMLSTREAM属性。
您可以使用Outlook对象模型(使用MAPIFolder.GetStorage)访问它,也可以使用Redemption - 它会公开RDOStore2.Categories集合。