![]() |
Работа с pst файлами в С/C++
Проблема в следующем:
В случае использования Microsoft Outlook вся почта загружается на Ваш компьютер и хранится в одном PST файле (Он по своей сути похож на БД). В файле PST помимо почты хранятся Контакты, Заметки, Задачи - все объекты, которые видны в дереве папок. Очень часто эти PST достигают очень больших размеров (Мб или несколько Гб), и стащить их с чужого компьютера тяжело и нецелесообразно если необхдимо прочесть всего несколько писем. Меня интересует: есть ли функции или библиотека для языка С, с помощью которой можна работать с этими файлами (то есть открыть, просмотреть. отфильтровать по дате или по заголовку)? из того что я нашел есть только MAPI i libPST, может кто-то знает что-то более детально? |
все, чтоя нашел по данному вопросу упирается в Simple MAPI и MAPI 1.0 - набор динамических библиотек, которые содержат функции для работы с почтой. Конкретней говорится даже о том, что доступ к PST осуществляется посредством MAPI. кто-то слыхал? может доводилось работать?
|
msdn слышало )
http://msdn.microsoft.com/ru-ru/library/245421h5.aspx |
Конечно слышал, но меня интересует вот что - используя MAPI мы действительно обращаемся к pst файлам Outlooka?
А при использованиии libpst для *nix подобных систем происходит чтение структуры пст файла (перечитывая соответствующие биты и байты), как работать в таком случае? |
Неужели никто никогда не работал с почтой??? не писал своих приложений для отправки и приема сообщений?
А что касается замечания товарища Hiro Protagonist, то msdn - дает не такую уж полную инфу, потому как формат файлов ПСТ является служебным и закрытым (хотя недавно Microsoft пообещали его открыть и представить детальную документацию) Но если бы все программисты сидели и ждали пока им все готовенькое выложат.... |
|
Я уже рассматривал вариант использования libpst, но все-таки остановился на MAPI - можно напрямую работать с сообщениями, без предварительного разбора файла пст по формату.
Так что будем юзать "мапи" и пока ограничимся готовыми функциями))) |
И так с помощью фунций MAPI удалось все-таки добраться до сообщений и прочесть их)))Но теперь возникла такая проблема:
появляется диалоговое окошко, в котором предлагается ввести логин и пароль, или просто выдается предупреждение о том, что мол Вы пытаетесь обратиься к файлам Outlooka, разрешить? Каким образом можно "погасить" эти окна? И еще: Теперь мне нужно прочесть адрессную книгу, в MAPI есть функция MAPIAddress() - у меня с ней тоже все получилось, но опять таки выплывает окно - в котором отбражаются все контакты. Есть вариант использования такой конструкции IMAPISession::OpenAddressBook (детально можно посмотреть сдесь) Кто мне поможет с онной разобраться??? |
попробуй просто искать окно с неким текстом в заголовке и эмулировать нажатие клавиши ОК в этом окне, чтобы предоставить доступ твоей проге к аутлуку.
|
Спасибо SWAPPER буду пробовать...
Я все таки доступился к адрессной книге!!! теперь могу прочесть имена пользователей и их мыло))) теперь хотелось бы попробовать получить и остальные данные о контактах из адрессной книги (например телефон, домашний адресс, вобщем все поля которые доступны аутлуку)... каким образом можно это осуществить? ЕЩЕ: можно ли прочесть и другие данные из пст файла, например заметки, календарь и т.д.??? |
| Время: 00:38 |