掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ファイル転送中(Inet)に処理がフリーズしないには? (ID:89200)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
あれ! >Private Sub StateChanged() は Private Sub Inet1_StateChanged(ByVal state As Integer) かな。 >以下のソースですと、処理結果を監視する部分がないように思うのですが、 StateChangedは割り込みで、その処理が行われると呼び出される為監視の 必要はありません。 >最終的には必ずicErrorかicRequestCompletedでコードが返されると思っていたのですが、 >そうではないんですかね・・・? 私もそう思います、従って無限ループにはならないかな、ただし上記の理由でDo〜Loopに する必要は無いと思われます。 最初の質問に戻って、ホストの応答が無くフリーズした様になり、タイムアウトが発生 した場合、一度接続を切り再接続、処理の続行をしたらいかがですか。 ホストによってエラーは様々なのですが、StateChangeでログを書き出したら、どこで ハングするか判る可能性は有ります。 タイムアウトは Inet1.RequestTimeout = 0とすると無限大に設定されます。 アップロードの場合はファイルサイズから大体の時間はわかりますから、 およそのタイムアウトの時間をセットした方が良いのではないかと思います。 Inetコントロールは色々な制限事項がありうまくいかない場合は、WinInet.Dllの FtpPutFileやFtpCommand等を使用する、DosのFtpコマンドを使用する、その他の Dllを使用するなどの方向転換が必要になります。 そろそろ帰って寝よ。。。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.