获取对其他收件箱的参考

Posted

技术标签:

【中文标题】获取对其他收件箱的参考【英文标题】:Get reference to additional Inbox 【发布时间】:2012-02-23 00:00:41 【问题描述】:

我正在使用 Outlook 2007 - 我的主要邮箱是:Tait, Mark

我还在我的个人资料中添加了另一个邮箱:采购、请求

两者都在 Outlook 中显示为***文件夹:

邮箱 - Tait, Mark> -对话历史 - 已删除的项目 -草稿 -收件箱 -垃圾邮件

邮箱 - 采购、请求 --对话记录 --已删除的项目 --草稿 --收件箱 --垃圾邮件

我可以使用以下方式获取对我的默认收件箱(Tait、Mark)的引用:Set Inbox = ns.GetDefaultFolder(olFolderInbox)

如何在“采购,请求”邮箱中获得对收件箱的引用?

【问题讨论】:

【参考方案1】:

这样的事情应该可以解决问题

Dim objNS As Outlook.NameSpace
Dim objFolder As Outlook.MAPIFolder
Set objNS = GetNamespace("MAPI")
Set objFolder = objNS.Folders("Procurement, Request")
Set objFolder = objFolder.Folders("Inbox")

这个链接有一些有用的代码handling different Inboxes - 它可能是有趣的

【讨论】:

@MarkTait 很高兴能帮上忙 :) 这仅在商店已添加到当前配置文件时才有效。 @brettdj 请问如何将 Set objFolder = objNS.Folders("Procurement, Request") 和 Set objFolder = objFolder.Folders("Inbox") 自动化成一个像 Public Sub AppResponseManage(Item作为 Outlook.MailItem)接收 Mailitem 作为参数(换句话说,如何从邮件项目中提取邮箱名称和收件箱文件夹名称?)非常感谢【参考方案2】:
Dim olNS As NameSpace
Dim InputFolder As Outlook.MAPIFolder
Set olNS = Outlook.Application.GetNamespace("MAPI")

' Get reference to folder in users Mailbox for Input
Set InputFolder = olNS.Folders("Procurement, Request").Folders("Inbox")

' all the emails in the shared inbox are represented by:
InputFolder.Items

【讨论】:

请详细说明这段代码是如何回答这个问题的。【参考方案3】:

使用Namespace.GetSharedDefaultFolder。即使邮箱没有在当前配置文件中打开,它也可以工作。当然,您仍然需要有权打开邮箱并访问相关文件夹:

Set vNamespace = Application.GetNamespace("MAPI")
set vRecipient = vNamespace.CreateRecipient("Procurement, Request")
if vRecipient.Resolve Then
  set vFolder = vNamespace.GetSharedDefaultFolder(vRecipient, olFolderInbox)
End If

如果您需要打开其他用户的邮箱(所有文件夹都关闭),您可以使用Redemption 及其RDOSession.GetSharedMailbox 方法:

 set Session = CreateObject("Redemption.RDOSession")
 Session.MAPIOBJECT = Application.Session.MAPIOBJECT
 set Store = Session.GetSharedMailbox("Procurement, Request")
 set vFolder = Store.GetDefaultFolder(olFolderInbox)
 MsgBox "The address of the mailbox owner: " & Store.Owner.Address

【讨论】:

以上是关于获取对其他收件箱的参考的主要内容,如果未能解决你的问题,请参考以下文章

短信收件箱中对联系人表的错误引用

Microsoft Graph API - 如何通过 API 向特定用户授予对我的收件箱的访问权限

iphone 6 归档啥意思

避免重复收件箱的 Listview 项目

outlook express从A电脑移动到B 电脑

获取 Outlook 日历邮件