Как использовать дополнительный почтовый идентификатор в win32com?

avatar
SmriG6
9 августа 2021 в 05:37
116
0
0

Я пробовал код ниже.

def send_mail():
file_path = r""

outlook_app = win32.Dispatch('Outlook.Application')
olNS = outlook_app.GetNameSpace('MAPI')

# choose sender account
send_account = None
for account in outlook_app.Session.Accounts:
    if account.DisplayName == 'sender@mail.com':
    # if account.SmtpAddress == "sender@mail.com":
        send_account = account
        
        break

mail_item = outlook_app.CreateItem(0)  # 0: olMailItem
mail_item._oleobj_.Invoke(*(64209, 0, 8, 0, send_account))
#mail_item._oleobj_.Invoke(*(64209,0,8,0,olNS.Accounts.Item("sender@email.com")))


mail_item.display()
mail_item.TO = 'sender@mail.com'
# mail_item.CC = 'sender@mail.com'
# mail_item.Recipients.Add('sender@mail.com')
mail_item.Subject = 'Test sending using particular account'
mail_item.BodyFormat = 1  # 1: Plain format
mail_item.Attachments.Add(file_path)


mail_item.Body = '''Hello, This is a test mail.\nThanks Guys. 
    '''

mail_item.Send()

Даже после настройки send_account он выбирает почтовый идентификатор моей организации, а не другой. Я также использовал SendUsingAccount, но получил тот же результат.

Источник
Eugene Astafiev
16 августа 2021 в 15:00
0

У вас настроена вторая учетная запись в Outlook?

SmriG6
17 августа 2021 в 10:33
0

Да, настраивается.

Ответы (0)