0

以前の質問で述べたように、MAPI を介して Outlook で共有連絡先を取得することは問題ありません。ただし、これは、現在の Outlook ユーザーと連絡先 (または予定表) を共有しているユーザー/受信者がわかっている場合にのみ可能です。

私の質問に戻ります: 私と連絡先を共有している受信者のリストを取得するにはどうすればよいですか?

リストを使用して、受信者を作成する foreach を実行し、共有フォルダーにアクセスします。

// 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 に答える