StorageItem 对象 (Outlook)
MAPI 中的邮件对象,它始终以隐藏项目的形式保存在父文件夹中,并存储 Outlook 解决方案的私有数据。
备注
StorageItem 对象存储在文件夹级别,从而使其可以与客户漫游,并可在线或离线。
Outlook 对象模型没有为 StorageItem 对象提供任何集合对象。 但是,当将 TableContents 参数指定为 olHiddenItems 时,可以使用 Folder.GetTable获取包含Folder 中所有隐藏项的 Table。 如果非常关心数据的私密性,则应在存储数据前将其加密。
一旦获得 StorageItem 对象,您可以执行以下操作来存储解决方案的数据︰
为待存储项目添加附件。
使用项目的显式内置属性(如 Body )来存储自定义数据。
使用 UserProperties.Add 方法的项中添加自定义属性。 请注意,在这种情况下,将忽略 UserProperties.Add 方法的可选 AddToFolderFields 和 DisplayFormat 参数。
使用 PropertyAccessor 对象来获取或设置自定义属性。
用于新 邮件 的默认邮件类为 IPM。存储 。 如果 邮件 作为隐藏消息的 Microsoft Office Outlook 2007年之前的 Outlook 版本中已存在,则邮件类将保持不变。 为了防止修改的邮件类, 邮件 不公开显式 邮件类 属性。
有关使用 StorageItem 对象存储解决方案数据的详细信息,请参阅存储解决方案的数据。
示例
Visual Basic for Applications 在下面的代码示例演示如何使用 StorageItem 对象存储专用解决方案数据。 它将数据保存在收件箱文件夹中的 邮件 对象的自定义属性。 下面介绍的步骤。
此代码示例调用 Folder.GetStorage 来获得现有 StorageItem 对象具有主题"我的专用存储"收件箱中。 如果已存在与该主题没有 邮件 , GetStorage 将创建具有该主题 StorageItem 对象。
如果新创建的 邮件 ,该代码示例创建对象的自定义属性"订单号"。 请注意,"订单号"收件箱中的隐藏项的属性。
然后,代码示例将一个值分配给"订单号",并保存 StorageItem 对象。
Sub AssignStorageData()
Dim oInbox As Outlook.Folder
Dim myStorage As Outlook.StorageItem
Set oInbox = Application.Session.GetDefaultFolder(olFolderInbox)
' Get an existing instance of StorageItem, or create new if it doesn't exist
Set myStorage = oInbox.GetStorage("My Private Storage", olIdentifyBySubject)
' If StorageItem is new, add a custom property for Order Number
If myStorage.Size = 0 Then
myStorage.UserProperties.Add "Order Number", olNumber
End If
' Assign a value to the custom property
myStorage.UserProperties("Order Number").Value = 100
myStorage.Save
End Sub
方法
名称 |
---|
Delete |
Save |
属性
名称 |
---|
Application |
附件 |
Body |
类 |
CreationTime |
Creator |
EntryID |
LastModificationTime |
Parent |
PropertyAccessor |
Session |
Size |
Subject |
UserProperties |
另请参阅
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。