![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
работа с Simple MAPI
aleko © (2006-10-28 01:21:00)Доброго времени суток..
Подскажите, используя интерфейс Simple MAPI, можно ли найти необходимое письмо не методом перебора всех входящих функцией MapiFindNext, а организовать что-то вроде поиска...
Пробовал сделать таким образом, но ничего не выходит:
предварительно информацию о письме (Отправитель, Тема, Дата) в цикле используя MapiFindNext и MapiReadMail заносил в StringGrid
var
...
S: array [0..512] of Char;
PP: PAnsiChar = @s[0];
Mess: TMapiMessage;
PMess: PMapiMessage = @Mess;
PRecDesc: PMapiRecipDesc;
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
var
i: integer;
begin
for i := 0 to StringGrid1.RowCount do
if MapiFindNext(0,0,'',PP,0,0,PP) = SUCCESS_SUCCESS then
begin
MapiReadMail(0,0,PP,0,0,PMess);
// в четвертое поле StringGrid занесена дата
if PMess.lpszDateReceived = StringGrid1.Cells[3,ARow] then
begin
PRecDesc := PMess.lpOriginator;
Label20.Caption := 'От кого: ' + PRecDesc.lpszName;
Label21.Caption := 'Тема: ' + PMess.lpszSubject;
Label22.Caption := 'Дата: ' + PMess.lpszDateReceived;
Memo1.Text := PMess.lpszNoteText;
Break;
end;
end;
end;
...не работает :((
aleko (2006-10-29 02:32:00) [1]Разобрался :)
Записать, а потом передавать в MapiReadMail идентификатор письма..
...работает :))