【问题标题】:How to read only new content in VSTO Outlook MailItem body?如何仅读取 VSTO Outlook MailItem 正文中的新内​​容?
【发布时间】:2010-02-01 16:50:56
【问题描述】:

我为 Outlook 2003 编写了一个小的 C# VSTO 插件,它可以在发送电子邮件时读取它们的正文,查找某些单词。它现在正在执行此操作:

if (currentItem.Body.Contains("text to search for"))

... 但它会检查整个电子邮件正文,而不仅仅是正在发送的新消息。

有没有办法让 Outlook 只检查正在发送的新邮件的内容,从而忽略其中可能存在的旧电子邮件链?

这些消息可以是任何格式(HTML、富文本、纯文本),并且可能包含或不包含任何较早的消息。这对我来说只是一个生产力工具,因此任何可行的黑客都值得在这里考虑。

谢谢!

【问题讨论】:

  • 根据链中使用的电子邮件程序,您可以做几件事: 跳过以“>”开头的行。当您点击以“From:”开头的行时停止处理。如果回复介于原始帖子之间,则可能很难,而且没有 100% 的方式。另一种方法可能是在编写新电子邮件时获取击键。
  • 这些想法不错,米凯尔。我不想费心看击键,但我会按照你的描述来分析消息的文本。
  • 在对话中使用上一封邮件的正文怎么样?

标签: c# .net outlook vsto add-in


【解决方案1】:

@Corbin March 在这里有最好的答案Separate a multipart email using Mime Parsers

【讨论】:

    【解决方案2】:

    为了记录,我认为最适合我的解决方案是简单地检查以“FROM:”开头的行,Mikael 建议。一旦找到我的文本,我就会停止搜索。这对我来说已经有一段时间了。

    感谢大家的回复和想法。

    这是我的参考代码:

        Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    
        Dim theLine As String
        Dim aBody()
        Dim bFound As Boolean
        Dim ctr As Long
    
        aBody = Array(Split(Item.Body, vbNewLine))
        bFound = False
    
        For ctr = 0 To UBound(aBody(1))
            theLine = aBody(1)(ctr)
            If InStr(theLine, "From:") > 0 Then
                Exit For
            End If
    
            If InStr(UCase(theLine), "ATTACH") > 0 Then
                bFound = True
            End If
    
        Next
    
        If bFound Then
            If Item.Attachments.Count < 1 Then
                Dim ans As Integer
    
                ans = MsgBox("Do you really want to send this without any attachments?", vbYesNo)
                If ans = 7 Then
                    Cancel = True
                    Exit Sub
                End If
            End If
        End If
    
    End Sub
    

    【讨论】:

      猜你喜欢
      • 2011-12-30
      • 1970-01-01
      • 2011-05-10
      • 2016-12-19
      • 2017-04-26
      • 1970-01-01
      • 2018-04-13
      • 2017-11-18
      • 2012-02-28
      相关资源
      最近更新 更多