본문 바로가기

Delphi/꿀팁

[E-Mail] 첨부파일 다운로드 하기 - 5

TEmailInfo = record
  Index: Integer;
  UID: string;
  PartNumber: string;
  TransferEncoding: string;
  FileName: string;
end;
PEmailInfo = ^TEmailInfo;

TAttachInfo = record
  Index: Integer;
end;
PAttachInfo = ^TAttachInfo;

TForm1 = Class(TForm)
  ..
  lstMailBox: TListBox;
  lstMailList: TListView;
  lstAttachList: TListView;
private
public
  SelectMsg: TIdMessage;
end;

//lstAttachList의 OnDblClick 이벤트를 추가합니다.
procedure TForm1.lstAttachListDblClick(Sender: TObject);
var
  sFileName: string;
  nIndex: Integer;
begin
  if lstAttachList.Items.Count = 0 then
    Exit;

  //첨부파일 리스트에서 선택한 첨부파일의 인덱스를 가져옵니다.
  nIndex := PAttachInfo(lstAttachList.Items[lstAttachList.ItemIndex].Data).Index;
  
  //파일명과 저장경로를 지정합니다.
  sFileName := ExtractFilePath(ParamStr(0)) + Trim(SelectMsg.MessageParts.Items[nIndex].FileName);
  
  //해당 경로로 첨부파일을 저장합니다.  
  TIdAttachmentFile(SelectMsg.MessageParts.Items[nIndex]).SaveToFile(sFileName);
end;

2017/10/11 - [Delphi/꿀Tip] - [E-Mail] Mail에 로그인 하기 - 1

2017/10/13 - [Delphi/꿀Tip] - [E-Mail] 메일함 목록 불러오기 - 2

2017/10/25 - [Delphi/꿀Tip] - [E-Mail] 메일함의 메일 리스트 불러오기 - 3

2019/09/21 - [Delphi/꿀Tip] - [E-Mail] 메일 및 첨부파일 내용 가져오기 - 4

 

반응형