【问题标题】:Getting signature from Outlook using python with Redemption RDO使用带有 Redemption RDO 的 python 从 Outlook 获取签名
【发布时间】:2016-09-06 12:31:10
【问题描述】:

我编写了一个程序,可以在 Outlook 中创建邮件并将其保存为 .msg 格式。我想在 HTMLBody 的末尾添加发送邮件的用户(即当前帐户用户)的签名。到目前为止,我还没有找到任何东西。

任何帮助将不胜感激。这是我的代码的一个简单示例:

win32com.client.gencache.EnsureDispatch("Outlook.Application")
session = win32com.client.Dispatch("Redemption.RDOSession")
session.Logon("Outlook")
signatures = session.Signatures
msg = session.GetMessageFromMsgFile(r"test.msg")
msg.Subject = "test subject"
msg.HTMLBody ="<html><body> <b> this is a body</b></body></html>"
signatures.Item(1).ApplyTo(msg, False)
msg.SaveAs("file.msg")

现在可以使用了,感谢所有答案! :)

【问题讨论】:

    标签: python email outlook outlook-redemption rdo


    【解决方案1】:

    默认情况下,您可以在磁盘上的以下文件夹中找到用户的签名:

     C:\Users\%username%\AppData\Roaming\Microsoft\Signatures
    

    它可能包含以下文件:

    • .htm - 创建 HTML 消息时使用此文件。
    • .rtf - 创建富文本消息时使用此文件。
    • .txt - 创建纯文本消息时使用此文件。

    • _files - 此文件夹在 Outlook 2007、2010 和 2013 中用于存储您的签名支持文件,例如格式、图像和/或名片(vcf 文件)。

    基本上,您需要读取磁盘上的适当文件,然后将内容插入到邮件项中。

    【讨论】:

      【解决方案2】:

      您可以使用 RDOSignature.ApplyTo - 请参阅http://www.dimastr.com/redemption/rdosignature.htm

      【讨论】:

      • 谢谢你,顺便说一句,我真的很喜欢与 Redemption 合作。 :)
      • 但是当我尝试使用它时,我得到一个错误,比如“Python 实例无法转换为 COM 对象”。我该如何解决?我也应该发送 RDOSignatures 吗?
      • 好的,所以我在问题中编辑了我的代码,添加了“签名”变量。我想我需要像 RDOSession 一样调度它,因为它给出了 COM 对象错误。
      • ApplyTo 采用要应用签名的项目,而不是布尔值。改为传递 msg 变量。
      猜你喜欢
      • 1970-01-01
      • 2018-05-28
      • 1970-01-01
      • 1970-01-01
      • 2022-08-14
      • 2016-05-26
      • 2012-12-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多