gpt4 book ai didi

c# - Outlook 对话历史记录

转载 作者:行者123 更新时间:2023-11-30 18:39:04 24 4
gpt4 key购买 nike

我正在研究创建一个 outlook 插件,我可以从“对话历史”文件夹中选择一个对话,然后单击一个按钮将其保存到一个文件夹中。有没有人对我如何通过 C# 选择对话历史文件夹和运行搜索以及选择对话有任何指示。

最佳答案

    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;

}

关于c# - Outlook 对话历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10495351/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com