Reputation: 23
I wrote a program that creates a mail in outlook and saves it in the .msg format. I want to add the signature of the user that is sending the mail (so the current account user) at the end of the HTMLBody. So far I haven't been able to find anything.
Any help would be appreciated. Here is an easy example of my code:
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")
It works now thanks for all the answers! :)
Upvotes: 2
Views: 4168
Reputation: 49445
By defualt, you can find user's signatures stored in the following folder on the disk:
C:\Users\%username%\AppData\Roaming\Microsoft\Signatures
It may contain the following files:
.txt - This file is used when creating Plain Text message.
_files - This folder is used in Outlook 2007, 2010 and 2013 to store supporting files for your signature such as formatting, images and/or business cards (vcf-files).
Basically you need to read an appropriate file on the disk and then instert the content to the mail item.
Upvotes: 1