是否可以通过将.MSG文件中的单个附件拖放到C#应用程序上来获取Outlook邮件项目详细信息?我的应用程序当前将.MSG的内容分离到我的应用程序中,但是我想更进一步,并从作为.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项目投射时,什么都不会发生。任何帮助,将不胜感激
感谢
克里斯
因为我最初的文章中,我一直在寻找其他的方式,以获得进出口寻找,因为我还没有成功与信息以上方法..
我看了下面的文章http://msdn.microsoft.com/en-us/library/aa219397(v=office.11).aspx并在测试项目中实现了代码。我最初知道我是否可以从附件中获取msg详细信息,但是如果用户从当前打开的邮件拖拽附件,那么我想知道是否可以从ActiveExplorer方法获取邮件详细信息。
在其中点:
myOlSel.Item(x)的.SenderName & “;”
Outlook提示我“一个程序试图访问电子邮件地址...”,但是在此消息框挂起,我无法选择其中一个选项。在做了进一步的阅读后,我明白为什么这是现成的,但无论如何都存在吗?
感谢
克里斯
你的意思是什么都没有发生?如果selectedItem为null,那么你的代码会导致异常。如果selectedItem属于Outlook.MailItem类型,那么您应该能够看到item.SenderName,否则我认为在尝试将selectedItem转换为其他类型时会遇到异常。 如果你调试你的应用程序,然后你能够看到什么类型selectedItem是? – 2012-03-13 10:35:48
感谢您的回复。 SelectedItem将作为System._COMObject返回。然后我添加到以下来获取类型:string type = Microsoft.VisualBasic.Information.TypeName(selectedItem);字符串类型显示为MailItem,但是当我尝试将SelectedItem转换为MailItem时,项目保留为空。 – chrisblue13 2012-03-13 10:52:20