我正在尝试使用Python(特别是从Flask)创建Outlook消息文件(.msg)文件。
这是我所拥有的:
import win32com.client
def html2msg():
com_object = win32com.client.Dispatch('Outlook.Application')
com_file = com_object.CreateItem(0)
com_file.Subject = 'Subject'
com_file.HTMLBody = '<html><head></head><body><p>Test Email</p></body></html>'
com_file.SaveAs('new.msg')
com_file.Close(0)
当以Windows中的用户身份运行时,或者当以用户手动运行flask应用程序时,从flask内部启动时,此方法效果很好。
当它运行背后的问题来IIS
与wfastcgi
我有这种非特异性的错误:
File "<COMObject Outlook.Application>", line 2, in CreateItem
pywintypes.com_error: (-2147467260, 'Operation aborted', None, None)
我以前在Word中遇到过类似的问题,这是由于com对象在系统配置文件下运行引起的,并且可以通过以下方式创建文件夹来解决:https : //theether.net/kb/100120?id= 100120
是否有人设法完成类似的任务?
当它通过wfastcgi在IIS后面运行时,就会出现此问题:我收到此非特定错误:
有关Office的服务器端自动化的注意事项的文章指出了以下错误信息:
Microsoft当前不建议也不支持任何无人参与的非交互客户端应用程序或组件(包括ASP,ASP.NET,DCOM和NT Services)中的Microsoft Office应用程序自动化,因为Office可能表现出不稳定的行为和/在此环境中运行Office时出现死锁。
如果要构建在服务器端上下文中运行的解决方案,则应尝试使用对无人值守执行安全的组件。或者,您应该尝试找到允许至少部分代码在客户端运行的替代方法。如果您使用服务器端解决方案中的Office应用程序,则该应用程序将缺少许多成功运行所需的功能。此外,您将承担整体解决方案稳定性的风险。
解决方法是,您需要使用Outlook基于的低级API-扩展MAPI或围绕该API的任何包装(如Redemption)。
如果仅处理Exchange服务器配置文件,请考虑使用EWS,请参阅开始使用Exchange中的Web服务以获取更多信息。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句