在收件人未知的 Outlook 中获取共享文件夹



我正在尝试使用 C# 获取 Outlook 中的所有共享文件夹。

我知道方法NameSpace.GetSharedDefaultFolder((,但它需要指定收件人。

我想知道如何在不知道收件人时获取所有共享文件夹。

通过传递收件人姓名或地址Namespace.CreateRecipient呼叫。使用返回的Recipient对象调用Namespace.GetSharedDefaultFolder

您需要知道收件人的姓名;它可以是表示收件人的显示名称、别名或完整 SMTP 电子邮件地址的字符串。在这种情况下,您将能够创建一个收件人对象并获取共享文件夹,如以下示例代码所示:

Sub ResolveName() 
Dim myNamespace As Outlook.NameSpace 
Dim myRecipient As Outlook.Recipient 
Dim CalendarFolder As Outlook.Folder 
Set myNamespace = Application.GetNamespace("MAPI")
Set myRecipient = myNamespace.CreateRecipient("Eugene Astafiev") 
myRecipient.Resolve 
If myRecipient.Resolved Then 
Call ShowCalendar(myNamespace, myRecipient) 
End If 
End Sub 
Sub ShowCalendar(myNamespace, myRecipient) 
Dim CalendarFolder As Folder 
Set CalendarFolder = _
myNamespace.GetSharedDefaultFolder _ 
(myRecipient, olFolderCalendar) 
CalendarFolder.Display 
End Sub

最新更新