Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.29;
Скачать: CL | DM;

Вниз

Работа с Outlook   Найти похожие ветки 

 
Kolos_rus ©   (2003-07-31 12:38) [0]

Как получить список писем в папке ВХОДЯЩИЕ Outlook, найти письмо например по теме и извлечь из него вложение (возможно оно там не одно).


 
Digitman ©   (2003-07-31 13:37) [1]

какое отношение имеет тема вопроса к разделу "Сети" ?
задавай тот же вопрос в "Общие", ибо Outlook по сабжу вопроса выступает просто как обычный OLE-сервер автоматизации.


 
valwhite   (2003-08-01 06:13) [2]

Что-то примерно такое:

procedure TForm3.Button3Click(Sender: TObject);
var
MyOlApp, InboxEK, EKItem, myFolder, myItem, EkAttachments, MyNameSpace: OleVariant;
i, j, k, m: integer;
AttFileName: string;
// CurNode, FldNode1, FldNode2, ItemNode, AttNode: TTreeNode;
begin
MyOlApp := CreateOLEObject("Outlook.Application");
MyNameSpace := MyOlApp.GetNamespace("MAPI");
try
for i := 1 to MyNameSpace.Folders.Count do begin
Application.ProcessMessages;
myFolder := MyNameSpace.Folders(i);
for j := 1 to myFolder.Folders.Count do begin
myItem := myFolder.Folders(j);
InboxEK := myFolder.Folders(j);
for k := 1 to InboxEK.Items.Count do begin
EKItem := InboxEK.Items(k);
// ItemNode := TreeView1.Items.AddChild(FldNode2,EKItem.Subject+" Размер:"+IntToStr(EKItem.Size));
// ItemNode.ImageIndex := 15;
// ItemNode.SelectedIndex := 15;
for m := 1 to EKItem.Attachments.Count do begin
EkAttachments := EKItem.Attachments(m);
AttFileName := EkAttachments.FileName;
// AttNode := TreeView1.Items.AddChild(ItemNode,"Файл:"+IntToStr(m)+": "+AttFileName);
//******************* Сохранить как файл: ***********************************
//
( "C:\Tmp\Att\"+EkAttachments.FileName)
Что-то примерно такое:

procedure TForm3.Button3Click(Sender: TObject);
var
MyOlApp, InboxEK, EKItem, myFolder, myItem, EkAttachments, MyNameSpace: OleVariant;
i, j, k, m: integer;
AttFileName: string;
// CurNode, FldNode1, FldNode2, ItemNode, AttNode: TTreeNode;
begin
MyOlApp := CreateOLEObject("Outlook.Application");
MyNameSpace := MyOlApp.GetNamespace("MAPI");
try
for i := 1 to MyNameSpace.Folders.Count do begin
Application.ProcessMessages;
myFolder := MyNameSpace.Folders(i);
for j := 1 to myFolder.Folders.Count do begin
myItem := myFolder.Folders(j);
InboxEK := myFolder.Folders(j);
for k := 1 to InboxEK.Items.Count do begin
EKItem := InboxEK.Items(k);
// ItemNode := TreeView1.Items.AddChild(FldNode2,EKItem.Subject+" Размер:"+IntToStr(EKItem.Size));
// ItemNode.ImageIndex := 15;
// ItemNode.SelectedIndex := 15;
for m := 1 to EKItem.Attachments.Count do begin
EkAttachments := EKItem.Attachments(m);
AttFileName := EkAttachments.FileName;
// AttNode := TreeView1.Items.AddChild(ItemNode,"Файл:"+IntToStr(m)+": "+AttFileName);
//******************* Сохранить как файл: ***********************************
//
EkAttachments.SaveAsFile("C:\Tmp\Att\"+EkAttachments.FileName);
//
//****************************************************************************
// AttNode.ImageIndex := 3;
// AttNode.SelectedIndex := 2;
end;
end;
end;
end;
finally
MyNameSpace.LogOff;
myOlApp.quit;
myOlApp := UnAssigned;
end;
end;



Страницы: 1 вся ветка

Текущий архив: 2003.09.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
14-96401
Князь Мышкин
2003-09-11 00:16
2003.09.29
Все. Бросаем есть. Прямо сейчас(23:30). Ни одного пончика.


7-96464
Андрей М.
2003-07-17 23:34
2003.09.29
аудит принтера


4-96493
Delf
2003-07-25 13:36
2003.09.29
Как узнать ProcessID зная дескриптор (hangle) окна


14-96383
Vlad Oshin
2003-09-11 17:47
2003.09.29
---|Ветка была без названия|---


1-96161
lejik
2003-09-18 10:32
2003.09.29
Имя процедуры