On-line: tnsr2, гостей 1. Всего: 2 [подробнее..]
АвторСообщение
администратор




Пост N: 111
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 05.11.13 15:57. Заголовок: Адреса Outlook как получить имя из этой книжки ?



Прошу подсказки - пытаюсь дернуть адресную книгу 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 , хотя в аутлуке я имена пользователей вижу нормально

Может есть у кого пример , буду благодарен за помощь )

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 2 [только новые]


moderator




Пост N: 517
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 05.11.13 16:07. Заголовок: Haz пишет: Может ес..


Haz пишет:

 цитата:
Может есть у кого пример


Нашел у себя в архиве такой пример:

#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


Может, поможет

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 112
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 05.11.13 16:15. Заголовок: Спасибо Григорий , то что надо!!


Спасибо

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

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 676
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет