2012-05-08 21 views
2

Conversation Historyフォルダから会話を選択し、フォルダに保存するボタンをクリックするとOutlookプラグインを作成します。誰かがC#経由で会話履歴フォルダを選択して検索を実行する方法と、会話を選択する方法の指針がありますか?Outlookの会話履歴

+0

また、私の方法を使用している場合は、以下のGlobal.OutlookApplicationまたはものは何でもアドインを呼び出しているを使用してください。 メールオブジェクトのリストを返すので、各フィールドを表示するデータソースにフォーマットするだけです。 – TheMonkeyMan

+0

このコメントを回答に入れることもできます。 – R0MANARMY

答えて

0
public static List<Outlook.MAPIFolder> GetFolders() 
    { 

     List<Outlook.MAPIFolder> _list = new List<Outlook.MAPIFolder>(); 

     Outlook.MAPIFolder root = OutlookApplication.Session.DefaultStore.GetRootFolder(); 


     foreach (Outlook.MAPIFolder folder in root.Folders) 
     { 
      _list.Add(folder); 
     } 

     return _list; 
    } 

    public static Outlook.MAPIFolder GetFolderByEntryId(string entryId) 
    { 
     List<Outlook.MAPIFolder> folders = GetFolders(); 
     return folders.Where(x => x.EntryID == entryId).FirstOrDefault(); 
    } 

    public static Outlook.MAPIFolder GetFolderByName(string folderName) 
    { 
     List<Outlook.MAPIFolder> folders = GetFolders(); 
     return folders.Where(x => x.Name == folderName).FirstOrDefault(); 
    } 

そして

public static List<Outlook.MailItem> GetSelectedItem() 
    { 
     List<Outlook.MailItem> _list = new List<Outlook.MailItem>(); 

     Outlook.Selection outlookSelection = OutlookApplication.ActiveExplorer().Selection; 

     for (int i = 1; i < outlookSelection.Count; i++) 
     { 
      Outlook.MailItem mailItem = (Outlook.MailItem)outlookSelection[i]; 

      _list.Add(mailItem); 
     } 

     return _list; 
    } 

    public static List<Outlook.MailItem> GetMailItems(string FolderName) 
    { 
     List<Outlook.MailItem> _list = new List<Outlook.MailItem>(); 

     Outlook.MAPIFolder theFolder = OutlookApplication.Session.GetFolderFromID(GetFolderByName(FolderName).EntryID); 

     foreach (Object item in theFolder.Items) 
     { 
      Outlook.MailItem mailItem = (Outlook.MailItem)item; 

      if (mailItem != null) 
      { 
       _list.Add(mailItem); 
      } 
     } 

     return _list; 

    } 
+0

誰でも必要とするソリューションを投稿する。 Microsoft Document Libraryは非常にラウンドアバウトの方法を提供しています。 – TheMonkeyMan

関連する問題