【问题标题】:Problem with reading *.msg outlook file using Microsoft.Office.Interop.Outlook使用 Microsoft.Office.Interop.Outlook 读取 *.msg Outlook 文件时出现问题
【发布时间】:2011-04-23 10:57:28
【问题描述】:

我正在编写一段代码,它将处理从存储在 *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");

【问题讨论】:

  • 我认为这可能是由于 Outlook 的版本。我在某个地方发现它仅在 Outlook 2007 之后才有效。任何人都可以确认吗?

标签: c# outlook msg


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 2014-12-25
    • 1970-01-01
    • 1970-01-01
    • 2013-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多