|
|
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
Те. задача: 1) Вывести адресную книгу Win (по умолчанию, напр. Outlook Express если XP) 2) Пользователь выбирает адресатов и нажимает OK 3) Должны быть выбраны не e-mail адреса а такие поля как: Служебные ->телефон Служебные ->факс Домашние ->телефон Домашние ->факс У себя на компе я нарыл свою же прогу 10-летней давности, кот. делает выборку DisplayName-Email (прилагается, не с пустыми же руками вопросы задавать). Там есть кнопка Адресаты, кот. делает что я хочу + добавляет DisplayName-Email в ListView. Мне надо чтоб вместо e-mail добавлялся номер факса (как это делает Microsoft Fax если кто знаком). Рабочий код: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. Я даже готов использовать MAPISession/MAPIMessages (правда если только через CreateObject, ненавижу раннее связывание). Но проблема в том что контролы предоставляют Код: vbnet 1. 2. но похоже недоделаны на тему Код: vbnet 1. 2. (этого нет). Я нашел некоторые намеки на требуемое: http://tech.groups.yahoo.com/group/outlook-dev/message/18818 Код: vbnet 1. 2. 3. Но пока не понимаю как увязать. Может кто чуть подтолкнет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2011, 17:13 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
По идее вот: How to use CDO (1.x) to read MAPI Address Book properties Но этот метод требует установки CDO, причем не cdosys.dll которая присутствует во всех виндах, а какой-то левой, которая еще и будет конфликтовать с OS в зависимости от того какой Outlook 2010 или 2007 установлен. (судя по беглому чтению документаций). У меня например на компе с XP + Outlook Express объект MAPI.Session отсутствует, а устанавливать инсталлером какие-то левые CDO (на произвольную систему юзера!!!) я бы не рискнул. Может есть какой другой метод (через API)? Кнопка "Адресная книга" в "Мастере подготовки факсов" из Microsoft Fax без проблем делает что я хочу, т.е. извлекает факсы и телефоны из выбранных адресатов, и очевидно без всяких CDO (1.x), которых на произвольном компе нет. Как? Куда копать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2011, 13:20 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
Что, такая нерешаемая проблема и никто не работал с MAPI-адресной книгой? Ну, допустим, я готов подкинуть это CDO в пакет с программой и зарегить через regsvr32. Но это должно работать на всех версиях Win (от XP до 7) с любыми адресными книгами (MAPI default) и плевать какие офисы там установлены и не вступать в конфликты. Я скачал с Microsoft какой-то ExchangeCDO.exe оно не устанавливается, пишет Collaboration Data Objects 1.2.1 cannot be installed unless Microsoft Office 2007 is also installed. Это на XP 32 bit. У меня Office 2000, Outlook вообще не установлен. Ну, м.б. какие-то обновления совместимости с 2007. Если я правильно понимаю, то мне нужен некий файл cdo.dll, кот. я должен зарегистрировать и пользовать согласно коду в предыдущем топике с использованием MAPI.Session .(а не глючный msi-инсталлер) Но конфликты с новыми оффисами мне тоже не нужны. Где взять? Или с этим лучше не связываться? Тогда как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2011, 16:52 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
совместно с аутлуком 2007 не ставить. с 2010 вообще не работает и не поддерживается (сейчас через System.Web.dll сборку, там есть Mail) CDO закончилось на 2003 сервере x86 (32bit) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2011, 17:05 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2011, 17:07 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
Konst_One, Я уже догадался что это вообще не тот путь (т.е. он того не стоит). А как тогда в адресную книгу к хитрым полям добраться? Я про MAPI api читал, поиском никаких намеков не нашел. Может хоть какое направление мысли дадите? (Большинство факсовых программ как-то умеют читать дефолтную книгу без всяких CDO) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2011, 17:16 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
микрософт советует использовать объектную модель outlook той версии, которая стоит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2011, 17:22 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
Konst_Oneмикрософт советует использовать объектную модель outlook той версии, которая стоит. Гы. Речь то не об Outlook, а о почтовом клиенте по умолчанию, точнее про адресную книгу по умолчанию . А она может быть: Outlook, Outlook Express (он же Почта Windows), Bat, Windows Live (наверное). И оно доступно через MAPI. Например прога которую я приложил (там конечно VB-specific контролы используются) работала и с OutlookExpress и с bat. Т.е. это Application-independent подход и не завязан на объектную модель конкретного приложения или его версии. Или MAPI уже тоже закончилось, не современно и не актуально? Я уже почти в бешенстве, задача представлялась ультра-легкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2011, 18:00 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
Делается это как-то так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Но при отсутствии примеров на VB вряд ли чего удастся. Есть некий модуль Mapivb32 на Microsoft, но даже код отправки письма, там приведенный по каким-то причинам не работает и завершается с ошибкой. Ну т.е. нужен пример (если это в принципе возможно), а примера нет. Короче пока решил пожалеть время и забить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2011, 11:23 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
Но при отсутствии примеров на VB вряд ли чего удастся.Их и не может быть, это пример для библиотеки MFC MAPI. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2011, 12:46 |
|
||
|
Доступ к диалоговому окну Адресной Книги + выбор нестандартных полей: телефон, факс
|
|||
|---|---|---|---|
|
#18+
AntonariyИх и не может быть, это пример для библиотеки MFC MAPI. Т.е. через VB вообще нет способа туда (в поля адресной книги) залезть? Должен же быть какой-то общевиндовый метод. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2011, 15:26 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=37592567&tid=2158198]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
152ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 254ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...