IdSMTP1.Send 送出內文為???亂碼問題 |
尚未結案
|
weiliching
初階會員 發表:53 回覆:78 積分:31 註冊:2003-12-27 發送簡訊給我 |
Dear ALL:
用Xe7 寫idSMTP 發Email 原本在 D7 程式使用 , 在內容寫中文, 一切正常, 改成Xe7 後~發生Email 的中文內文 , 確變成了 "???" 但是Subject 主旨確是正常的中文顯示. 我在Debug 用Watch list 去看 EText:TString 的內容, 與 idmessage1.Body 的內容, 發現顯示一切都正常. 所以判斷可以是 IdSMTP1.Send(IdMessage1) 時出的問題, 有特別加入 IDSMTP1.iohandler.defstringencoding:= IndyTextEncoding(Tencoding.ANSI); 去處理,但是一樣無效 也試過以下這些方式, 同樣中文會顯示 "??? " idmessage1.ContentTransferEncoding := 'base64'; IdMessage1.CharSet:='utf-8'; IdMessage1.CharSet:='big5'; IdMessage1.CharSet:='US-ASCII'; 爬了很多文~尚不知是哪部份出的問題. 原程式碼: Var EText:TStringList; begin IDMessage1.Clear; IdMessage1.Subject:= 'mail發信通知'; IdMessage1.From.Text := 'test@aaa.com'; //寄件人 idmessage1.recipients.EMailAddresses:= 'vincent@aaa.com'; //收件人 // IdMessage1.CharSet:='utf-8'; IdMessage1.CharSet:='big5'; idmessage1.ContentType:='text/html'; // IdMessage1.CharSet:='US-ASCII'; idmessage1.ContentTransferEncoding := 'base64';//有無加也是會??? // Content-Language: zh-tw EText := TStringList.Create; EText.Add('會產生亂碼的內文 ');////watch list view 一切正常 |
Ray_Lin
一般會員 發表:0 回覆:30 積分:11 註冊:2015-07-21 發送簡訊給我 |
|
weiliching
初階會員 發表:53 回覆:78 積分:31 註冊:2003-12-27 發送簡訊給我 |
|
pcplayer99
尊榮會員 發表:146 回覆:790 積分:632 註冊:2003-01-21 發送簡訊給我 |
|
weiliching
初階會員 發表:53 回覆:78 積分:31 註冊:2003-12-27 發送簡訊給我 |
已經自我解決了,
問題點竟然在於 ,寫法問題, 我把 idmessage1.CharSet := 'UTF-8'; 放在 idmessage1.ContentType:='text/html'; 之後就ok了, 弄不清是什麼原因 所以寫法就是 idmessage1.ContentType:='text/html'; idmessage1.CharSet := 'UTF-8'; 一切就正常 如果寫成 idmessage1.CharSet := 'UTF-8'; idmessage1.ContentType:='text/html'; 就會掛掉. 能否有大大解說一下? |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |