Delphi XE5 Android APP EMail至GMail失敗 |
缺席
|
soredtown
一般會員 ![]() ![]() 發表:2 回覆:3 積分:1 註冊:2014-06-14 發送簡訊給我 |
在Win32 Platform下沒有問題,可是deploy至Android就失敗.
程式如下,請指教. procedure TForm1.Button1Click(Sender: TObject); begin with IdMessage1 do begin Recipients.EMailAddresses := 'test@gmail.com'; From.Address := 'test@gmail.com'; From.Name := 'Self'; CCList.EMailAddresses := ''; BccList.EMailAddresses := ''; Priority := mpNormal; Subject := 'Test Mail Subject'; Body.Add('Test Mail Body'); end; with IdSMTP1 do begin Host := 'smtp.gmail.com'; Username := 'xxxxxxx'; Password := 'yyyyyyy'; IOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(Self); Port := 465; UseTLS := utUseImplicitTLS; try Connect; except end; if not Connected then begin Showmessage('EMail Error'); Exit; end; try Send(IdMessage1); finally Disconnect; end; end; end; |
heart75047
一般會員 ![]() ![]() 發表:9 回覆:13 積分:19 註冊:2010-05-20 發送簡訊給我 |
以上程式碼在win7下測試成功
在XP卻運行失敗 [code delphi] if not Connected then begin Showmessage('EMail Error'); //這行showmessage會顯示 Exit; end; [/code] 發現應該是SSL 或是TLS的問題 下載http://indy.fulgan.com/SSL/openssl-1.0.1h-i386-win32.zip 解壓縮到執行檔的資料夾解決 要找找 android的opensll
編輯記錄
heart75047 重新編輯於 2014-06-19 15:17:27, 註解 無‧
|
soredtown
一般會員 ![]() ![]() 發表:2 回覆:3 積分:1 註冊:2014-06-14 發送簡訊給我 |
Delphi Indy使用OpenSSL DLL(如libeay32.dll及ssleay32.dll)去實現Secure Connections.
在Windows中,執行檔只要將DLL放於同一目錄就可執行. 如今於XE5中FireMonkey Mobile Application亦有提供Indy, 但Android並無動態連結庫機制(Dynamic Link Library)去使用libeay32.dll及ssleay32.dll, 個人認為是否可找到libeay32.dcu及ssleay32.dcu,讓Compile時可以作靜態連結庫(Static Link Library). |
soredtown
一般會員 ![]() ![]() 發表:2 回覆:3 積分:1 註冊:2014-06-14 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |