从.MSG附件获取邮件项目详细信息

本文关键字:项目 详细信息 获取 MSG | 更新日期: 2023-09-27 18:27:31

是否可以通过将.MSG文件中的单个附件拖放到C#应用程序来获取Outlook邮件项目的详细信息?我的应用程序当前将.MSG的内容放到我的应用软件中时会将其分离,但我想更进一步,从作为.MSG一部分的单个附件中获取发件人、接收日期/时间等。这就是我目前正在尝试的:

Outlook.Application myApp = new Outlook.Application();
object selectedItem = myApp.ActiveExplorer().Selection[1];
Outlook.MailItem item = selectedItem as Outlook.MailItem;
string sender = item.SenderName;

当我尝试将selectedItem强制转换为Outlook.Mail项目时,不会发生任何事情。如有任何帮助,将不胜感激

感谢

Chris

自从我最初的帖子以来,我一直在寻找其他方式来获得我想要的信息,因为我没有成功地使用上面的方法。。

我看过下面的文章http://msdn.microsoft.com/en-us/library/aa219397(v=office.11).aspx,并在一个测试项目中实现了该代码。我知道一开始我问我是否可以从附件中获取消息的详细信息,但如果用户从当前打开的消息中拖动附件,我想知道是否可以从ActiveExplorer方法中获取消息详细信息。

在以下位置:

myOlSel.Item(x).SenderName&";"

Outlook提示我"程序正在尝试访问电子邮件地址…",但此时消息框将挂起,我无法选择其中一个选项。经过进一步的阅读,我明白了为什么会有这个,但它周围有吗?

感谢

Chris

从.MSG附件获取邮件项目详细信息

也许selectedItem为null是因为索引1中实际上没有所选项目?

我有下面的是正在工作(尽管它有一个预约项目)

Inspector activeInspector = this.OutlookApp.ActiveInspector() as Inspector;
object currentItem = activeInspector.CurrentItem;
if (currentItem != null && currentItem is AppointmentItem)
{
     AppointmentItem appItem = currentItem as AppointmentItem;
}

也许您应该使用Selection[0]?