使用Microsoft.Office.Interop.Outlook读取* .msg outlook文件时出现问题

时间:2011-04-23 10:57:29

标签: c# outlook msg

我正在编写一段代码,用于处理从* msg Outlook文件中存储的电子邮件中提取信息。我从C# Outlook interop and OpenSharedItem for opening MSG files获取了如何做的想法。但是当调用方法OpenSharedItem时,得到这样的错误System.AccessViolationException。谁知道问题是什么?
这是导致错误的代码

Outlook._Application app = new Outlook.Application();
Outlook.NameSpace NS = app.GetNamespace("MAPI");
Outlook.MAPIFolder inboxFld = NS.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
Outlook.MailItem fld =  (Outlook.MailItem) app.Session.OpenSharedItem("E://Projects//C#//message1.msg");

1 个答案:

答案 0 :(得分:8)

确定。万一有人会遇到同样的问题,我终于得到了答案。首先应该是

Outlook.MailItem fld =  (Outlook.MailItem) app.Session.OpenSharedItem("E:\\Projects\\C#\\message1.msg");

区别在于斜线 然后,您需要使其工作的是Outlook 2007或更新版本。就是这样:]