Q&A

  • 이메일 관련......
indy로 이메일 보내는것에 대해 물어봅니다..

idmsg로 메세지를 구성하여 smtp로 보내는데..

Html코드가 안되서 그럽니다..

Content-Type := 'text/html'을 설정해서

보내는데..첨부파일없이는 잘되는데.. 파일첨부만하면..

html코드가 그대로 보여집니다.. 어떻게 하는지 부탁드립니다..

procedure TFrm_email.MsgProc() ; //메세지 작성..
const
  htmlstr = '<html>' ;
  space = '<br><br><br><br><br><br><br><br><br><br><br><br>' ;
  brstring = '<br>' ;
var
  Sender_valueF, Sender_value : String; //받는사람..
  i,j : Integer ;
  first_Flg : Boolean ;
  susin : String ;

begin
  //받는사람 처리..


   susin := '<HR color=#8bb5e2> <DIV align=center> '
         + '<FONT face=굴림 size=2 color=#8bb5e2>본 메일은 정보통신부 권고 사항에 의거'
         + '제목에 [광고]라 표시된 광고 메일입니다.</FONT><BR> '
         + '<A style="PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-SIZE: 12px; '
         + 'PADDING-BOTTOM: 3px; COLOR: #ffff00; PADDING-TOP: 3px; FONT-FAMILY: 굴림;'
         + 'BACKGROUND-COLOR: #8bb5e2; TEXT-DECORATION: none"'
         + 'href="mailto:'
         + Init.Mail.Add + '">수신거부[Deny]</A>'
         + '<FONT color=#8bb5e2  size=2 color=#8bb5e2>버튼을 클릭하시면 수신거부처리가 이루어 집니다.<br>'
         + 'If you don''t want to receive this mail anymore, click here [Deny]</FONT>'
         + '</DIV> <HR color=#8bb5e2> </html>' ;



  Sender_valueF := '' ;
  Sender_value := '' ;
  First_Flg := True ;
  for i := 0 to Rx_List.Items.Count -1 do
  begin
    If Rx_List.Checked[i] then
    begin
      If First_flg then begin
        sender_valueF := Mail_List[i] ;
        First_Flg := False ;
      end else Sender_value := sender_value + Mail_List[i] + ', ' ;
    end ; //end if
  end ; //end for
  Sender_value := copy(sender_value,1,length(Sender_value) - 2) ; //마지막 , 없애기

  //메세지맹그는거..
  idMsg.Clear ;

  idMsg.Headers.Text := 'Content-type: text/html';
  idMsg.ContentType := 'text/html' ;
  idMsg.From.Address := Init.Mail.Add ;
  idMsg.From.Name    := Init.Mail.User ;
  idMsg.Subject      := edit_title.Text ;
  idMsg.Body.Append(htmlstr) ;
  for j := 0 to memo.Lines.Count -1 do
  begin
    idMsg.Body.Append(Memo.Lines.Strings[j]) ;
    idMsg.Body.Append(brstring);
  end ;
  idMsg.Body.Append(space);
  idMsg.Body.Append(susin) ;
  idMsg.Recipients.EMailAddresses := Sender_ValueF ;
  idMsg.BCCList.EMailAddresses := Sender_Value ;

  for i := 0 to List_file.Items.Count -1 do
  TIdAttachment.Create(idMsg.MessageParts , list_file.Items.Strings[i]) ;
end ;
0  COMMENTS