4

我正在编写一段代码,它将处理从存储在 *msg Outlook 文件中的电子邮件中提取信息。我从C# Outlook interop 和 OpenSharedItem 打开 MSG 文件的想法。但是当调用方法 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");
4

1 回答 1

8

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

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

区别在于斜线。
然后,您只需使用 Outlook 2007 或更新版本即可。就是这样:]

于 2011-04-26T21:58:28.490 回答