C++ Outlook 对象模型获取共享日历文件夹
C++ Outlook Object Model get shared calendar folder
我想在共享日历的联系人文件夹上使用 GetCalendarExporter()。
我编写了我认为只会提供默认日历文件夹(即所有者的日历文件夹)的代码。我想要共享(委托)日历文件夹 object/pointer。知道怎么做吗?
截至目前,我的代码如下:
CComPtr<Olk::_NameSpace> spNameSpace = spApplication->GetNamespace(L"MAPI");
Olk::MAPIFolderPtr spCalFolder = spNameSpace->GetDefaultFolder(Olk::olFolderCalendar);
spCalFolder->GetCalendarExporter();
您需要使用 NameSpace.GetSharedDefaultFolder 方法,其中 returns 一个 Folder
对象代表指定用户的指定默认文件夹。此方法用于委托方案,其中一个用户已将访问权限委托给另一个用户一个或多个默认文件夹(例如,他们的共享日历文件夹)。
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 Outlook.Folder
Set CalendarFolder = myNamespace.GetSharedDefaultFolder(myRecipient, olFolderCalendar)
CalendarFolder.Display
End Sub
我想在共享日历的联系人文件夹上使用 GetCalendarExporter()。
我编写了我认为只会提供默认日历文件夹(即所有者的日历文件夹)的代码。我想要共享(委托)日历文件夹 object/pointer。知道怎么做吗?
截至目前,我的代码如下:
CComPtr<Olk::_NameSpace> spNameSpace = spApplication->GetNamespace(L"MAPI");
Olk::MAPIFolderPtr spCalFolder = spNameSpace->GetDefaultFolder(Olk::olFolderCalendar);
spCalFolder->GetCalendarExporter();
您需要使用 NameSpace.GetSharedDefaultFolder 方法,其中 returns 一个 Folder
对象代表指定用户的指定默认文件夹。此方法用于委托方案,其中一个用户已将访问权限委托给另一个用户一个或多个默认文件夹(例如,他们的共享日历文件夹)。
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 Outlook.Folder
Set CalendarFolder = myNamespace.GetSharedDefaultFolder(myRecipient, olFolderCalendar)
CalendarFolder.Display
End Sub