昨天我可以使用win32client读取msg文件,但是今天突然对同一个文件运行相同代码时,它会引发错误。
找不到原因。关于错误消息的解释不多。昨天发生了Internet中断,后来又恢复了,但这似乎不是原因。
import win32com.client as win32
outlook = win32.Dispatch('Outlook.Application').GetNameSpace('MAPI')
msg = outlook.OpenSharedItem('path/file.msg')
print(msg.SenderName)
昨天工作时,输出显然是一个名称,例如Joe Doe,但今天它是粘贴在下面的错误消息。
com_error: (-2147352567, 'Exception occurred.', (4096, 'Microsoft Outlook', "We can't open 'RE Your Sumo Invoice - Gas.msg'. It's possible the file is already open, or you don't have permission to open it.\n\nTo check your permissions, right-click the file folder, then click Properties.", None, 0, -2147287038), None)
答案 0 :(得分:1)
错误代码(STG_E_FILENOTFOUND
)和错误说明表示您未指定MSG文件的完整路径,仅指定文件名(“ RE Your Sumo Invoice-Gas.msg”)。