![](/img/trans.png)
[英]win32com.client.Dispatch works but not win32com.client.gencache.EnsureDispatch
[英]win32com.client.gencache.EnsureDispatch(“Outlook.Application”) not working
我試圖通過Python腳本使用Outlook客戶端發送電子郵件。 當下面的Python腳本與IDLE編輯器分開執行時,它可以正常工作。 但是,當將相同的代碼行放在另一個Python腳本的末尾(以便在觸發邏輯執行電子郵件之后),並且從Tomcat服務器中托管的Web應用程序調用Python腳本時,它將無法正常工作。
代碼段:
#!/Python36/python.exe -u
import win32com.client`
mail_subject = "Test Mail Subject"
mail_body = "Test Mail Body"
Outlook = Win32com.client.gencache.EnsureDispatch("Outlook.Application")
mail = Outlook.CreateItem(0)
mail.To = 'xxx@abc.com'
mail.Subject = mail_subject
mail.Body = mail_body
mail.Send()
為了檢查失敗的地方,我在每行之后打印了一些注釋。 發現該行:
Outlook = win32com.client.gencache.EnsureDispatch("Outlook.Application")
從Web應用程序執行Python腳本時失敗。 任何人都可以幫助解決。
根據對問題的問題描述,可以選擇以下兩種方法嘗試使用:
1.請在win32com.Client.Gencache.EnsureDispatch("Outlook.Application")
之前包含以下代碼。
from win32com.client.gencache import EnsureDispatch
2.您應使用以下代碼替換代碼win32com. Client.Gencache.EnsureDispatch("Outlook.Application")
win32com. Client.Gencache.EnsureDispatch("Outlook.Application")
Gencache. EnsureDispatch ("Outlook.Application")
有關詳細信息,請訪問下面的網站: https : //www.programcreek.com/python/example/103552/win32com.client.gencache.EnsureDispatch
如有任何疑問,請回復我。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.