6

以下のコードを使用して からタスクを取得していますOutlook 2007

    public class c_tasks : IDisposable
    {
        private Microsoft.Office.Interop.Outlook.Application objOutlook = null;
        private Microsoft.Office.Interop.Outlook.NameSpace objNamespace = null;
        private Microsoft.Office.Interop.Outlook.MAPIFolder objFolder = null;
        private string strType; // this is type "Tasks"
        private int iItemCounter;

        public c_tasks()
        {
            objOutlook = new Microsoft.Office.Interop.Outlook.ApplicationClass();
            objNamespace = objOutlook.GetNamespace("MAPI");
            strType = "Tasks";
        }

        public void Dispose()
        {
            if (objOutlook != null) objOutlook.Quit();
        }

        public void iGetAllTaskItems()
        {
            int iReturn = 0;
            Microsoft.Office.Interop.Outlook.TaskItem item;

            try
            {
                objFolder = objNamespace.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderTasks);
                item = (Microsoft.Office.Interop.Outlook.TaskItem)objFolder.Items[1];
                for (int ii = 2; ii <= objFolder.Items.Count; ii++)
                {
                    string sub = item.Subject;
                    string own = item.Owner;
                }
            }
            catch (System.Exception e)
            {

            }
            return iReturn;
        }
    }

それはうまく機能し、私は結果を得ています。しかし2 Users、Outlook データがあるとします。特定のユーザーに固有のタスクを取得するにはどうすればよいですか?

4

2 に答える 2

1
  1. = を使用してバインドusing Outlook = Microsoft.Office.Interop.Outlook;
  2. リストを作成 =public static List<Outlook.TaskItem> Aufgaben = new List<Outlook.TaskItem>();
  3. 私のコードを受け取ってください

         Outlook.MAPIFolder task = Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderTasks);
        foreach (Outlook.TaskItem task2 in task.Items)
        {
            //MessageBox.Show(task2.ConversationTopic);
            Aufgaben.Add(task2);
        }
    
  4. 幸せになってください:D
于 2014-08-08T09:13:33.143 に答える
0

プログラムは、一部のユーザーの資格情報の下で実行されます。GetDefaultFolderを呼び出すと、そのユーザーのタスクが取得されます。

別のユーザーのタスクを取得するには、GetSharedDefaultFolderを呼び出す必要があり、現在のユーザーにはその共有フォルダーを開く権限が必要です。GetSharedDefaultFolderリンクの備考セクションに注意してください。そのメソッドではアクセスできない特別なフォルダーがいくつかあります。

于 2013-01-09T16:39:08.393 に答える