在 C# 中创建/打开从路径到新 Outlook.MailItem 的现有消息

2024-01-22

您好,我想从磁盘上的现有 Outlook.MailItem 创建一个 Outlook.MailItem (我相信)。我将路径存储在字符串中,并且希望访问以保存其中的正文和附件。

我似乎不知道如何在 C# 中打开它并访问它。

目前我有类似的东西

其中 fl 的计算结果类似于“C:\users\msgs\email.msg”

感谢您抽出时间

Outlook.Application app = new Outlook.Application();

        try
        {

            foreach (String fl in Directory.GetFiles(docInfo.LocalPath + _preprocessorDirectory))
            {
                if (Regex.IsMatch(fl.Trim(), _regex, RegexOptions.IgnoreCase))
                {

                   Outlook.MailItem email = new Outlook.MailItem(fl);
                   SaveAttachments(email);
                   SaveBody(email);
                }
            }
        }
        catch (Exception ex)
        {
            logger.Error("Error in Process for document " + docInfo.OriginalPath, ex);
            callback.Invoke(docInfo, false);
        }
        return false;

要在 Outlook 中打开项目,请尝试:

var email = (Outlook.MailItem)app.Session.OpenSharedItem(fl)

从那里,您可以访问Attachments财产和Body财产也是如此。

另外,正如我在评论中提到的,如果Regex.IsMatch是确定文件扩展名,使用路径.GetExtension() http://msdn.microsoft.com/en-us/library/system.io.path.getextension.aspx instead

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 C# 中创建/打开从路径到新 Outlook.MailItem 的现有消息 的相关文章

随机推荐