2017-06-08 2 views
1

Ich entwickle ein Python-Skripte, um ein einfaches AppointmentItem zu erstellen und senden Sie es an einige Empfänger mit win32com-Bibliothek. Ich habe die gesamte Dokumentation und einige VBA-Beispiele in diesem Link gefunden: https://msdn.microsoft.com und alles scheint klar und gut zu sein. Aber in meinem Skript, obwohl das AppointmentItem erstellt und die Empfänger aufgelöst wurden, kann ich es nicht senden. Das Folgende ist nur ein Beispiel dafür, wie der Code aussieht.Senden Sie einen TerminIthem mit Python win32com Bibliothek

outlook = win32com.client.Dispatch("Outlook.Application") 
ns = outlook.GetNamespace("MAPI") 
ns.Logon(profilename) 

App = outlook.CreateItem(1) 
App.Subject = "subject" 
App.Body = "Meeting" 
App.Location = "München" 

App.Recipients.Add(recipient) 
App.Recipients.ResolveAll() 

App.Send() 

Sollte ich unbedingt ein Exchange-Konto haben? Gibt es einen Workaround, um dieses Problem zu vermeiden? Ich kann normale E-Mails senden, indem ich diese Bibliothek verwende:

statt einen Termin zu erstellen (vierte Zeile). Ich habe aus diesem Grund versucht, eine E-Mail mit dem Termin im Anhang zu senden, aber in der E-Mail gibt es keinen Anhang.

Antwort

1

Ich habe die Lösung gefunden und möchte sie posten, um anderen zu helfen, die sie vielleicht brauchen.

Es ist nur eine Codezeile mehr erforderlich. Der Termin sollte in eine Besprechung umgewandelt werden.

outlook = win32com.client.Dispatch("Outlook.Application") 
ns = outlook.GetNamespace("MAPI") 
ns.Logon(profilename) 

App = outlook.CreateItem(1) 
App.Subject = "subject" 
App.Body = "Meeting" 
App.Location = "München" 

App.MeetingStatus = 1 
App.Recipients.Add(recipient) 
App.Recipients.ResolveAll() 

App.Send() 
Verwandte Themen