标签: mailitem

从路径创建/打开现有消息到c#中的新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;
Run Code Online (Sandbox Code Playgroud)

c# outlook mailitem

2
推荐指数
1
解决办法
8138
查看次数

更改 Outlook 邮件项目选择 C#

我想从我的 Outlook 加载项中选择一个邮件项目。我知道如何从 C# 显示邮件项目,但我需要在 Outlook 窗口本身中选择它。

显示邮件项目:

mailItem.Display();
Run Code Online (Sandbox Code Playgroud)

我正在使用 Outlook 2010 加载项。

有人知道如何做到这一点吗?

c# outlook add-in mailitem

2
推荐指数
1
解决办法
4715
查看次数

Outlook VBA--某些MailItem属性返回值,其他则不返回值

编辑:新信息:我刚才意识到,虽然Mailitem.Body的返回是"",但实际值是"应用程序定义的或对象定义的错误".我不完全确定这意味着什么,但我确实知道它出现在多个领域 - 我在下面放了一个屏幕截图.

错误

我遇到的问题是某些属性会返回正确的值,而其他属性则不会.我有一个示例电子邮件,其中我有一个主题为"主题"的电子邮件,邮件为"正文",发件人电子邮件地址为"email@address.com",发送日期为2013年6月12日.

当我运行以下代码时:

    Dim ComputerName As String
    Dim ErrorState As String
For Each MailItem In InboxItems
        ComputerName = MailItem.Subject
        'ErrorState = MailItem.Body
        ErrorState = MailBody(MailItem)
        strDate = GetDate(MailItem.SentOn)
        SenderEmail = MailItem.SenderEmailAddress
        If strDate = DateToday And SenderEmail = "email@address.com" Then
            Computers(a, 0) = ComputerName
            Computers(a, 1) = ErrorState
            a = a + 1
        End If
        Debug.Print MailItem.Subject
        Debug.Print MailItem.Body
    Next MailItem
Run Code Online (Sandbox Code Playgroud)

我得到的是ComputerName ="Subject",ErrorState ="",SenderEmail =""和strDate ="2013/6/12"(在这种情况下这是正确的格式).为什么这会返回两个Mailitem属性的正确值,而不是其他两个属性?这是一个非常奇怪的问题,我将非常感谢你们所能给予的任何帮助!

我将在这里为代码添加更多上下文:

    Set objOutlook = CreateObject("Outlook.Application", "localhost")
    Set objNamespace = objOutlook.GetNamespace("MAPI")
    Set Inbox …
Run Code Online (Sandbox Code Playgroud)

outlook vba mailitem

1
推荐指数
1
解决办法
2万
查看次数

使用C#回复/回复所有特定的Outlook邮件

我想发送回复来说明我的Outlook mailBox中的特定邮件.我打算通过使用主题/正文/发件人搜索邮箱找到邮件,然后回复找到的邮件.我已成功使用C#从邮箱中搜索邮件,但我无法回复邮件.

而且,如果我使用回复,它将是在Outlook中执行的操作的完全复制品,即如果在邮件上回复,主题是否会添加RE:或者我们需要手动将文本附加到主题?

请饶恕我的无知

任何帮助将不胜感激

c# outlook mailitem ms-office office-interop

1
推荐指数
1
解决办法
2600
查看次数

标签 统计

mailitem ×4

outlook ×4

c# ×3

add-in ×1

ms-office ×1

office-interop ×1

vba ×1