0

正如我在前一个问题中提到的,通过 MAPI 在 Outlook 中获取共享联系人是没有问题的。但这只有在您知道与当前 Outlook 用户共享联系人(或日历)的用户/收件人时才有可能。

现在回到我的问题:如何获得与我共享联系人的收件人列表?

使用该列表,我将创建一个收件人,然后访问共享文件夹。

// Get recipients    
IList<string> recipientsSharingContacts =  **???** ;

// Import/Read shared contacts 
foreach (string recip in recipientsSharingContacts){

    // Open Shared Folder
    MAPIFolder sharedContactsFolder = 
      Application.Session.GetSharedDefaultFolder(recip, OlDefaultFolders.olFolderContacts)

    // Import Contacts 
    ...

}

希望有人可以帮助我。

4

1 回答 1

2

如果有人对解决方案感兴趣,我是这样做的:

ContactsModule module = (ContactsModule)outlookObj.ActiveExplorer().NavigationPane.Modules.GetNavigationModule(OlNavigationModuleType.olModuleContacts);
foreach (NavigationGroup navigationGroup in module.NavigationGroups) {
     foreach (NavigationFolder navigationFolder in navigationGroup.NavigationFolders) {
          foreach (var item in navigationFolder.Folder.Items) {
                     // Found Folders are: Contacts, Suggested Contacts and Shared Contact Folders


                     // Import/Read ContactItems
                     ...
                }
于 2012-11-23T12:50:17.067 回答