Невозможно преобразовать COM-объект - Microsoft outlook и C #

Я написал этот код для просмотра непрочитанных элементов в моем почтовом ящике Outlook, и вот код:

 Microsoft.Office.Interop.Outlook.Application app;
 Microsoft.Office.Interop.Outlook.Items items; 
 Microsoft.Office.Interop.Outlook.NameSpace ns; 
 Microsoft.Office.Interop.Outlook.MAPIFolder inbox;

 Microsoft.Office.Interop.Outlook.Application application = new Microsoft.Office.Interop.Outlook.Application();
        app = application;
        ns =  application.Session;
        inbox = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox);
        items = inbox.Items;
        foreach (Microsoft.Office.Interop.Outlook.MailItem mail in items)
        {
            if (mail.UnRead == true)
            {
                MessageBox.Show(mail.Subject.ToString());
            }
        }

, но в цикле foreach я получаю эту ошибку:

«Невозможно преобразовать COM-объект типа 'System .__ ComObject' для типа интерфейса 'Microsoft.Office.Interop.Outlook.MailItem'. Эта операция завершилась неудачно, поскольку вызов QueryInterface на COM-компонент для интерфейса с IID '{00063034-0000-0000-C000-000000000046} 'не удалось из-за следующей ошибки: такой интерфейс не поддерживается (исключение из HRESULT: 0x80004002 (E_NOINTERFACE)).

Stage 01-default-configuration.xml

Мы подготавливаем и объявляем карту с идентификатором exampleMapping , чтобы позже дополнить их данными.



  

Stage 02-custom-configuration.xml (необязательно)

Мы настраиваем exampleMapping и добавляем запись.



  
    
  

Stage 03-make-use-of-configuration.xml (обязательный)

Использует определенную карту exampleMapping , независимо от того, настроено ли оно индивидуально или это все еще пустая объявленная карта.



    
       
    

Проблема здесь в том, что невозможно добавить записи в карту exampleMapping после первого этапа. Spring выдает исключение, что карта с идентификатором exampleMapping уже существует. Если мы опустим первый этап, карта не будет объявлена, а третий этап может ' t resolve exampleMapping , которое также вызывает исключение.

Как я могу решить эту проблему? Я прочитал Слияние коллекций (весенние документы), но это не помогло. Можно ли позже добавлять значения в карты / списки перед их использованием?

Спасибо!

16
задан Christopher Klewes 11 January 2011 в 10:27
поделиться