You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

自动化发送Outlook邮件报错求助:win32com.client调用异常

Outlook自动化创建邮件报错的解决方案

问题重现

使用以下Python代码尝试自动化创建Outlook邮件时出现报错,删除AppData\Local\Temp\gen_py\3.9目录下文件后问题仍未解决:

import win32com.client
ol=win32com.client.Dispatch("outlook.application")
olmailitem=0x0 #size of the new email
newmail=ol.CreateItem(olmailitem)

解决步骤

  • 以管理员权限运行脚本:右键点击Python IDE或脚本文件,选择「以管理员身份运行」,Outlook的COM接口调用可能需要更高权限。
  • 确保Outlook正常运行:关闭Outlook后重新启动,避免后台进程异常导致COM连接失败。
  • 重新生成win32com类型缓存:执行以下代码强制重新生成Outlook的类型库缓存,替代手动删除文件的操作:
    import win32com.client
    win32com.client.gencache.EnsureDispatch("Outlook.Application")
    
  • 检查Python与Outlook位数匹配:64位Outlook必须搭配64位Python,32位Outlook对应32位Python,位数不匹配会直接导致COM调用失败。
  • 调整Outlook安全设置:Outlook默认阻止自动化脚本访问,可通过注册表修改关闭安全提示(注意此操作存在一定安全风险):
    1. 打开注册表编辑器,定位到HKEY_CURRENT_USER\Software\Microsoft\Office\<Outlook版本>\Outlook\Security(例如Office 365对应版本号16.0)
    2. 添加两个DWORD值:PromptOOMSend设为0,PromptOOMAddressBookAccess设为0。

内容的提问来源于stack exchange,提问作者Pravin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 15:05:43