Python 实例在尝试移动 Outlook 电子邮件时无法转换为 COM 对象

The Python instance can not be converted to a COM object while trying to move an Outlook email

抱歉,即使是在周围最黑暗的水域中冲浪的日子也没有提供答案。

我可以阅读电子邮件,也可以创建新文件夹,但是当我尝试将它们标记为已读,或者当我尝试将它们移动到另一个文件夹时,我得到这个“Python 实例可以不能转换为 COM 对象。

我现在想知道这是否与 Outlook 的某些安全设置有关。

代码如下:

def __init__(self):
    self.inbox = self.Application.GetNamespace("MAPI").GetDefaultFolder(6)
    self.MyFolder = self.inbox.Folders['TESTING']
    messages = self.MyFolder.Items
    for message in messages:
        if message.UnRead:
                try:
                    Found = False
                    for x in self.MyFolder.Folders:
                        if x.Name == Alarm.group(1):
                            Found = True
                            message.Move(Alarm.group(1))
                            break
                except Exception as error:
                    print("Error: ", error)
                if not Found:
                    print("NOT FOUND")
                    self.MyFolder.Folders.Add(Alarm.group(1))
                    message.Move(Alarm.group(1))
            except AttributeError as ex:
                print('Error: ', ex, 'message not processed', message)

MailItem.MoveMAPIFolder OOM 对象的实例作为参数。您正在传递一些 Python 对象。可以通过类似于检索方式检索文件夹 self.MyFolder