Visual C# 2008 Expressで.NET Frameworkアプリケーションの勉強をしています。
今回、テキストファイルに書かれたURLリストを巡回するブラウザを作成しているのですが、サイトの読み込み完了に時間がかかり、途中で停止してしまう現象に悩まされています。
ソースは以下のようになっています。
string[] tempLine = File.ReadAllLines("list.txt",
System.Text.Encoding.GetEncoding("Shift_JIS"));
foreach (string temp in tempLine)
{
webBrowser1.Navigate(temp);
//読み込みが完了するまで待つ
while (webBrowser1.IsBusy == true || webBrowser1.ReadyState != WebBrowserReadyState.Complete)
{
//読み込み完了後、5秒まってから次に移動する
System.Threading.Thread.Sleep(5000);
System.Windows.Forms.Application.DoEvents();
}
}
アクセスして10秒以上たっても読み込みが完了しない場合、次のURLに飛ぶという処理を追加したいのですが、どのようにやったものか悩んでいます。
ご助言を頂ければと思います。よろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>アクセスして10秒以上たっても読み込みが完了しない場合、次のURLに飛ぶという処理を追加したいのですが
>//読み込みが完了するまで待つ
>while (webBrowser1.IsBusy == true || webBrowser1.ReadyState != WebBrowserReadyState.Complete)
>{
この「読み込みが完了するまで待つ」をやめれば?
whileループなんかにするから「未完了の場合は、ずっとSleep(5000)とDoEvents()を繰り返して、相手先が無反応だと、永久に待ち続けてしまう」っての、理解してる?
ぶっちゃけ「読みこんで、完了してなかったら、10秒待って次に行く」ってやれば良いんじゃないの?
while (webBrowser1.IsBusy == true || webBrowser1.ReadyState != WebBrowserReadyState.Complete)
の「while」を「if」に書き替えて
System.Threading.Thread.Sleep(5000);
の「5000」を「10000」に書き替えてたらどうなるかな?
プログラムは「アルゴリズムを理解してから」書こうね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP phpでcookieがうまく保存されない 2 2023/08/02 16:40
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- UNIX・Linux raspberrypi に bluealsaを入れようにも見つからない 1 2023/02/04 10:55
- C言語・C++・C# TCP/IP通信時のサーバーからの受信 2 2022/11/23 09:11
- 据え置き型ゲーム機 最近PS4の読み込みの調子がおかしいです。グラセフで起動して読み込みが完了していない状態で始まったの 1 2022/07/18 18:43
- 仕事術・業務効率化 資料の読み込みについて 「資料を読み込んでおいて」と言われた場合、どの状態になっていれば完了と言える 4 2023/04/06 12:52
- その他(開発・運用・管理) 書き換え中にBIOSを破損してしまったようです。 1分くらいで完了しますが、読み込みしかできなくなり 1 2022/07/24 04:50
- その他(プログラミング・Web制作) ラズパイ上の、pythonのエラーについて 1 2023/04/12 23:27
- 格安スマホ・SIMフリースマホ J-COMモバイル新規申込みについて質問です 先日J-COMモバイル新規申込みしました 数日後に発送 0 2023/07/13 16:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語 バッファについて。
-
GetPrivateProfileString変値
-
ハードディスク DVD 読み...
-
ado db
-
VB6のスクロールバー付きフレー...
-
画面全体にマスク
-
フレーム内のオプションボタン...
-
フレームでのResponse.Redirect
-
ムービークリップの位置と角度...
-
Flash再生中につぎのフレームを...
-
A.S 3.0 キーボードでのフレー...
-
FLASH上でインラインフレームみ...
-
Flash lite1.0で カウントダウン
-
Directshowを使って動画を画像...
-
VBで動的に作成したパネルの上...
-
Flash Liteで作成したFlash待ち...
-
2Dゲーム作成する際、アニメー...
-
phpで音を鳴らす
-
Access2010でサブフォームのフ...
-
シンクライアントとMetaFrameの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C#でDLLファイル読み込みを行う...
-
C言語 バッファについて。
-
GetPrivateProfileString変値
-
SDHCカードのデータをPCに取り...
-
画像が一瞬とぎれてしまいます...
-
ipadでdブックがとんでもなく遅...
-
PIC EEPROM
-
ヤフオクの画像拡大機能が
-
XMLを利用したFLASH画像ギャラ...
-
SQLが応答しなくなっているのか...
-
C#でブラウザのタイムアウト処理
-
メールソフト「Mail」で送った...
-
PCでのツイッター閲覧について
-
空の音楽用CDーRだけが認識...
-
エクセルVBA読み込みアドレスの...
-
FLASH内MCの表示・非表示
-
Flashで右クリックメニューにつ...
-
フレーム内に移動したい
-
ソーラーパネルのアルミフレー...
-
HPを作りたい
おすすめ情報