Я пишу небольшое wpf-приложение, которое будет читать топ-50 электронных писем (просто не отправляет никаких других сообщений) от пользователей через интеграцию с C # outlook.
Чтобы сделать пользовательский интерфейс моего приложения отзывчивым, я устанавливаю MAPI-соединение и выполняю чтениепапка «Входящие» из фонового рабочего.
Все работает нормально, но для некоторых пользователей случайным образом я получаю следующее исключение.
The operation failed.
at Microsoft.Office.Interop.Outlook._MailItem.get_SenderName()
at WPFapplication.WPFOutlookView.OutlookMailItem..ctor(MailItem item)
at WPFapplication.WPFOutlookView._getEmailsBackgroundWorker_DoWork
(Object sender, DoWorkEventArgs e)
Это исключение происходит очень случайно, и я не могу воспроизвести его на своем компьютере разработчика.
Можно ли использовать фонового работника для установления подключения Outlook из приложения WPF?(Поскольку некоторые сообщения в Интернете, предлагающие все вызовы OOM outlook, должны происходить в основной ветке outlook. Применимо ли это, даже когда мы пишем надстройку outlook?)некоторые пользовательские машины не имеют каких-либо настроек профиля Outlook или ждут, пока пользователь введет пароль?
ОБНОВЛЕНИЕ: Я не пытаюсь получать электронные письма без присмотра, просто мне нужно, независимо от того, что пользователь ввел.приложение должно загрузить свой пользовательский интерфейс, и оно может ждать получения электронной почты, когда пользователь вводит учетные данные.Если я вызываю OOM в потоке пользовательского интерфейса, то весь пользовательский интерфейс моего приложения не отображается, пока пользователь не введет учетные данные, что является основной причиной вызова OOM в backgroundworker.Мое приложение простое: 1. Представление wpf и список, в котором будут отображаться 20 лучших электронных писем и обновлений всякий раз, когда пользователь получает новое электронное письмо.моя реализация в моем представлении WPF, есть фоновый работник, который вызывает OOM и получает электронные письма и обновляет список, и этот список привязан к списку.Какие изменения вы предлагаете здесь?