私のプログラムは、HTTP を使用してリモート ホストにファイルを配置します。やむを得ない理由により、リモート ホストはデータ転送の最終パケットを確認するのに時間がかかります。私の経験によれば、約30秒であるデフォルトのタイムアウトよりも長い時間です。したがって、次のコードを使用して、タイムアウトを 5 分に増やしたいと考えました。
DWORD dwTimeout= 300000; // 5 minutes
pFtpConnection->SetOption( // KB176420: this has no effect on some
INTERNET_OPTION_SEND_TIMEOUT, dwTimeout); // old versions of IE.
pFtpConnection->SetOption(
INTERNET_OPTION_RECEIVE_TIMEOUT, dwTimeout);
pFtpConnection->SetOption( // NB: Docs say these 2 are not implemented.
INTERNET_OPTION_DATA_SEND_TIMEOUT, dwTimeout);
pFtpConnection->SetOption( // our own tests show that they are!
INTERNET_OPTION_DATA_RECEIVE_TIMEOUT, dwTimeout);
これは呼び出しに要約される MFC コードです。
InternetOption(hConnection, INTERNET_XXX, &dwTimeout, sizeof(dwTimeout))
問題は、プログラムが使用されているコンピューターの無視できない割合で、このコードが明らかにタイムアウトの変更に失敗していることです。
データ接続タイムアウトを確実に設定するにはどうすればよいですか?
ティア、
セルジュ・ワティエ。