用Python处理Outlook发送事件

用Python处理Outlook发送事件,python,outlook,win32com,Python,Outlook,Win32com,我正试图使用以下Python代码通过outlook服务器发送电子邮件,但我收到一个弹出窗口,指示“有程序试图代表您发送电子邮件。” 如果这是意外情况,请单击“拒绝”并验证您的防病毒软件是否是最新的。“我知道可以在outlook设置中禁用此功能,但我无法禁用,因为我没有管理员访问权限 我的问题是,有没有办法通过python以编程方式处理/避免这种情况?我也知道使用smtplib可以避免这种情况,但是我无法通过它连接到我的服务器,因此这也不是一种解决方案 import win32com.client

我正试图使用以下Python代码通过outlook服务器发送电子邮件,但我收到一个弹出窗口,指示“有程序试图代表您发送电子邮件。”

如果这是意外情况,请单击“拒绝”并验证您的防病毒软件是否是最新的。“我知道可以在outlook设置中禁用此功能,但我无法禁用,因为我没有管理员访问权限

我的问题是,有没有办法通过python以编程方式处理/避免这种情况?我也知道使用
smtplib
可以避免这种情况,但是我无法通过它连接到我的服务器,因此这也不是一种解决方案

import win32com.client
olMailItem = 0x0
obj = win32com.client.Dispatch("Outlook.Application")
newMail = obj.CreateItem(olMailItem)
newMail.Subject = "Test Subject"
newMail.Body = "Test Body"
newMail.To = "Mail@place.com"
newMail.Send()

最终用户无法禁用此功能。如果您的系统上有最新的防病毒应用程序,则不会显示提示。 如果无法控制用户环境,您的选项将列在


基本上,在PHP中,您只能使用或。

从Outlook对象模型调用不安全函数时,会得到标准的安全提示。构建Outlook的低级API(扩展MAPI)不会生成此类提示。赎回库也基于该API构建。因此,您需要使用Redemption的对象,而不是OOM(现有代码)

要保留现有代码,您需要使用专门为此类任务设计的组件,而不需要更改或重写现有代码

ClickYes组件允许以编程方式单击安全对话框上的按钮,我认为这不是最好的方法。一个窗口可以与另一个应用程序重叠