Форум » [x]Harbour » Адреса Outlook как получить имя из этой книжки ? » Ответить

Адреса Outlook как получить имя из этой книжки ?

Haz: Прошу подсказки - пытаюсь дернуть адресную книгу OutLook из harbour, и не все гладко идет задачка простая - просто считать книгу, делаю это так : ============================================== FUNC GetAddress() LOCAL objOutlook LOCAL objAddressList LOCAL objAddressEntry LOCAL objGAL LOCAL nCount HB_SETCODEPAGE( "RU1251" ) objOutlook := CreateObject("Outlook.Application") objNameSpace := objOutlook:Session objAddressList := objNameSpace:AddressLists objGAL := objAddressList:Item(1) objAddressEntry := objGAL:AddressEntries nCount := objAddressEntry:Count oEntry := objAddressEntry:GetFirst() ? oEntry:Name ? oEntry:Address FOR i := 2 TO nCount oEntry := objAddressEntry:GetNext() ? 'Address -> ', oEntry:Address ? 'Name -> ', oEntry:Name END objOutlook:Quit() RETURN NIL ============================================= ВОПРОСЫ 1. Приходиться использовать objGAL := objAddressList:Item(1) , а не как в примерах из VB objNameSpace:AddressLists('Contact') - иначе ругается не пойму почему ((( 2. при выводе, ? oEntry:Name ? oEntry:Address вместо :Name почему-то тоже выдает :Address , хотя в аутлуке я имена пользователей вижу нормально Может есть у кого пример , буду благодарен за помощь )

Ответов - 2

gfilatov2002: Haz пишет: Может есть у кого пример Нашел у себя в архиве такой пример: [pre]#define olFolderContacts 10 FUNCTION MAIN() LOCAL oOutlook := CREATEOBJECT( "Outlook.Application" ) LOCAL oNameSpace := oOutlook:GetNameSpace("MAPI") LOCAL oContacts := oNameSpace:GetDefaultFolder( olFolderContacts ) LOCAL i FOR i = 1 TO oContacts:Items:Count ? oContacts:Items[ i ]:FullName ? oContacts:Items[ i ]:BusinessAddressStreet ? oContacts:Items[ i ]:BusinessAddressPostalCode ? oContacts:Items[ i ]:BusinessAddressCity ? oContacts:Items[ i ]:BusinessAddressState ? oContacts:Items[ i ]:BusinessAddressCountry ? oContacts:Items[ i ]:BusinessTelephoneNumber ? oContacts:Items[ i ]:Email1Address ? oContacts:Items[ i ]:LastModificationTime ? NEXT oOutlook:Quit() INKEY( 0 ) RETURN NIL [/pre] Может, поможет

Haz: Спасибо PS. этот бы пример еще добавить в SAMPLES\OLE ...



полная версия страницы