Через COM-части pywin32
вам нужно получить объект приложения Outlook и получить от него его атрибут Session
, который дает вам объект Пространство имен (метод GetNamespace
также должен работать для той же цели, когда вызывается с единственным поддерживаемым значением аргумента, 'MAPI'
). Оттуда вы можете использовать свойство Accounts
, чтобы получить объект Accounts , который является типичной коллекцией COM - индексируется через Item
вплоть до Count
. Вы зацикливаетесь на нем и проверяете каждый объект Account : у каждого есть два интересующих свойства - a UserName
(строка, которую вы хотите проверить на равенство с «более коротким именем входа») и DisplayName
- Строка, которую вы хотите.
Да, это невероятно долго и запутанно, но это нормально для COM-интерфейсов, предлагаемых MS-приложениями. Насколько я знаю, в последних выпусках Outlook может быть более гибкий путь - это долгий и изнурительный способ, который работает долгое время (в настоящее время у меня даже нет удобной установки Windows, чтобы проверить это и написать Python для тебя ...! -)