IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Данные из Outlook, как достать? :)
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 86
Пол: Мужской

Репутация: -  0  +


Нужно достать из аутлука в текстовый файл некоторые данные, а именно: кому,от кого, время отправления, первая строка письма

Т.е программа должна это делать. Как из него вытащить информацию?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Цитата
И нужен реальный e-mail
Ну, тогда тестируй... У меня работает вроде:
procedure TForm1.OutlookClick(Sender: TObject);
var
i: Integer;
myOutlookApp: TOutlookApplication;

mailItem, objReply: OutlookXP.MailItem;
objRecips: OutlookXP.Recipients;

iCount: Integer;
s, s_addr, firstLine: string;
sL: TStringList;
begin
// пытаемся подключиться к существующей копии Outlook-а
// Если не получится - сообщим, что Outlook не запущен, и все...
myOutlookApp := TOutlookApplication.Create(nil);
myOutlookApp.ConnectKind := ckRunningInstance;

try
myOutlookApp.Connect;
except
ShowMessage('Нет запущенной копии MS Outlook');
myOutlookApp.Free; Exit;
end;

// Хм... Все-таки, запущен. Проходим по всем выбранным письмам
// (их может быть больше одного), и собираем необходимые данные.
// Для того, чтобы получить адрес - пойдем на хитрость: создадим
// письмо - ответ (Reply), Outlook в список получателей занесет того,
// от кого письмо пришло, считаем это значение, и... не будем ничего
// отправлять...

for iCount := 1 to myOutlookApp.ActiveExplorer.Selection.Count do
begin
mailItem := myOutlookApp.ActiveExplorer.Selection.Item(iCount) as _MailItem;

objReply := mailItem.Reply;
objRecips := objReply.Recipients;
s_addr := '';
for i := 1 to objRecips.Count do
begin
s_addr := s_addr + objRecips.Item(i).Address;
end;

// Конечно, выделить первую строку из mailItem.Body можно и по-другому,
// но мы ж не ищем легких путей...
sL := TStringList.Create;
try
sL.DelimitedText := StringReplace(mailItem.Body, ' ', '&prob;', [rfReplaceAll]);
firstLine := StringReplace(sL.Strings[0], '&prob;', ' ', [rfReplaceAll]);
finally
sL.Free;
end;

s := Format('From/To %s <%s> : "%s", sent: %s',
[mailItem.SenderName, s_addr, firstLine, DateToStr(mailItem.SentOn)]);
ShowMessage(s);
end;

// Все, закончили. Чтоб не было утечки памяти, отключаемся и удаляем объект
// (не волнуйся, та копия MS Outlook, что была запущена, продолжает работать)
myOutlookApp.Disconnect;
myOutlookApp.Free;
end;
В файл запишешь уже сам, наверное...
 К началу страницы 
+ Ответить 

Сообщений в этой теме
striker   Данные из Outlook   25.08.2009 15:14
volvo   "DRKB -> ActiveX, COM и Другие технологии …   25.08.2009 16:19
striker   Единственное пока что там нашёл это как считать ад…   25.08.2009 19:21
volvo   Ну, проверить я ничего связанного с MS Outlook не …   25.08.2009 22:16
volvo   Так... Нашел компьютер с Аутлуком и Дельфи одновре…   25.08.2009 23:56
striker   Я тоже Аутлуком не пользуюсь и не пользовался нико…   26.08.2009 17:41
striker   volvo, больше ничего не нашёл?   27.08.2009 11:50
Unconnected   Так Volvo тебе уже подсказал всё, что нужно:) Нем…   27.08.2009 13:21
volvo   Погоди... Тебе что, надо, чтобы было так: пользова…   27.08.2009 14:17
Unconnected   А в im.SenderName какой E-mail? Или просто имя о…   27.08.2009 15:32
volvo   Там просто имя отправителя.   27.08.2009 15:48
striker   Да И нужен реальный e-mail :(   27.08.2009 19:22
Unconnected   Реальный, в Оутлуке, если не ошибаюсь, аж в свойст…   28.08.2009 2:11
volvo   Ну, тогда тестируй... У меня работает вроде: proce…   28.08.2009 2:15
striker   Спасибо, всё работает оч. хорошо. Время я ещё доба…   31.08.2009 16:01
volvo   Угу... Значит, проверяй, в какой папке находишься,…   31.08.2009 16:45
striker   Если будет возможность - посмотри, пожалуйста. Вр…   31.08.2009 18:02
volvo   Навскидку (проверь, работает ли) - смотреть, что в…   31.08.2009 18:18
striker   Да, работает только пишет адрес правильный "к…   1.09.2009 1:27
Unconnected   Возможно, так и должно быть, типа objRecips.Item…   1.09.2009 1:39
volvo   procedure TForm1.OutlookClick(Sender: TObject); va…   1.09.2009 1:57


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 6.09.2025 18:08
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name