[問題] (已解決) FTP的GetFtpConnection等待過久

作者: srxrrr (幹!我是肌董)   2015-01-28 00:17:39
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC2010
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
MFC
問題(Question):
我是使用CInternetSession::GetFtpConnection來進行FTP連線
如果一切正常 則立馬連上線 沒有什麼等待時間!
但如果伺服器沒開 或連線資料有設錯 等等造成無法連線的狀況
則執行此行程式碼時 會造成非常長的等待連線時間(我測為約20秒...)
(此時間內將自動一直重新連線)
此時間內將無法在此程式內作其他動作 整個卡在這一行...
這是很嚴重的問題...
有上網搜尋 發現也有人有此問題 但沒有找到什麼好的解決辦法
我是希望能縮短"等待連線"時間 最好一秒內就好!
以下為我的程式碼
希望有碰過類似情況的熱心版友 能提供我一點建議!
感激不盡 謝謝!!
程式碼(Code):(請善用置底文網頁, 記得排版)
CInternetSession *InternetSession; //指向建立連線的連線設定物件
CFtpConnection *m_pFtpConnection; //指向與FTP伺服器連結的連線物件
InternetSession = new CInternetSession(_T("My Ftp Session"));
//建立CInternetSession物件
m_pFtpConnection =
InternetSession->GetFtpConnection(_T("192.168.7.100"),
_T("Apple"),
_T("1234"),
21,true); //就是此行出問題:(
作者: scwg ( )   2015-01-28 00:29:00
InternetSession->SetOption(INTERNET_OPTION_CONNECT_TIMEOUT, 1000) ?

Links booklink

Contact Us: admin [ a t ] ucptt.com