none
Redemption Objects.(работа с outlook oм) RRS feed

  • Вопрос

  •  

    Добрый день.

    Я в первый раз на этом форуме и если я не там создал тему. Зар.Изв.

    Собственно и проблема.

    Вот есть метод каторый должен получить все адресса из контакт листа моего outlook a
    решил задачу все работало но есть проблемма надо обайти security prompt outlooka.
    вот решил сделать это с помошью Redemption а .
    вот метод но он не как не хочеть выдовать мне адресса. 
    что не так в коде?

    даже while работает нормально но адесса не как не выдает? подскажите знатаки в чем проблемма ?

    void __stdcall CMyComAddIN::GetAdresses_Redemption()
    {
        
        CoInitializeEx(NULL,COINIT_APARTMENTTHREADED);


        hr_pro_id = CLSIDFromProgID(L"Outlook.Application",&findCLSID);
        hr = olApp.CreateInstance(findCLSID);
        
        
        pFolder_ = olApp->GetNamespace(L"MAPI",&spNS);
        COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR); 
        HRESULT log = spNS->Logon(covOptional, covOptional, covOptional, covOptional);
        spNS->GetDefaultFolder(Outlook::olFolderContacts,&spContacts); 


        
        
         spContacts->get_Items(&spItms);
         spItms->GetFirst(&spFirstItem);


        CLSID clsid; 
        CComPtr<Redemption::ISafeContactItem> pSafeContactItem(NULL); 

         hr_form_prog_id =  CLSIDFromProgID(L"Redemption.SafeContactItem", &clsid);
         hr_ = pSafeContactItem.CoCreateInstance(clsid);

            
        BSTR emailAddress;
        pSafeContactItem->put_Item(pContact_); 
        pSafeContactItem->get_Email1Address(&emailAddress);
        

        
        while(spFirstItem)
        {
            pContact_ = spFirstItem;
            CComBSTR emailAddress;
            
            pSafeContactItem->get_Email1Address(&emailAddress);
            spFirstItem.Release();
            spItms->GetNext(&spFirstItem);
        }

        
    Заранее Спасибо
    19 сентября 2007 г. 7:28

Ответы