Надстройка Outlook 2003 - получение исключения COM при завершении работы приложения после создания окна WPF - PullRequest
5 голосов
/ 25 марта 2010

Я разрабатываю надстройку для Outlook 2003. До сих пор я использовал только winforms для отображения одной формы, но сегодня я добавил окно WPF для более сложных вещей. Из-за окна WPF выдается исключение COM при закрытии внешнего вида.

Кто-нибудь знает почему? Мне нужно запустить отдельный поток для окна WPF в состоянии одной квартиры.

Вот исключение:

System.Runtime.InteropServices.InvalidComObjectException was unhandled
  Message="COM object that has been separated from its underlying RCW cannot be used."
  Source="PresentationCore"
  StackTrace:
       at System.Windows.Input.TextServicesContext.StopTransitoryExtension()
       at System.Windows.Input.TextServicesContext.Uninitialize(Boolean appDomainShutdown)
       at System.Windows.Input.TextServicesContext.TextServicesContextShutDownListener.OnShutDown(Object target)
       at MS.Internal.ShutDownListener.HandleShutDown(Object sender, EventArgs e)
  InnerException: 

С наилучшими пожеланиями,
Оливер Ханаппи

1 Ответ

2 голосов
/ 09 мая 2010

Вам необходимо вызвать завершение работы в диспетчере окон WPF в том же потоке после закрытия окна.

window.Dispatcher.InvokeShutdown();

О подобной проблеме сообщалось в Microsoft Connect

...