VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/10/16(Thu) 12:55
投稿者魔界の仮面弁士
Eメール
URL
タイトルRe^3: HTMLを取得できません

取得のタイミングによっては、DocumentプロパティからNothing が返される事があるため、
『Do Until objIE.Document.readyState = "complete"』だけですと、実行時エラー91が
発生する事もありえます。

可能であれば、objIEをWithEventsで宣言して、DocumentCompleteイベントを利用された方が良いでしょう。
http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200310/03100037.txt

もし、イベントを使わず、ループで待機させるのであれば、

   1.  『.Busy = False』まで待機してから、
   2.  『Not .Document Is Nothing』まで待機し、最後に
   3.  『.Document.readyState = "complete"』まで待機する。

のように、監視ループを3つ用意しておく事をお奨めします。


ちなみに、Documentプロパティから返されるのは、HTMLをDOMとして解析した結果なので、
本来のHTMLソースとは異なった物になります。
元のHTMLソースを得たい場合は、下記を参照してみてください。
http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200310/03100017.txt

> Do While objIE.Busy = True
> で読み込み終了まで待つことができると思ってたのですが、違ったようですね。
Busyプロパティから分かるのは、HTML文書をダウンロードしおわった、という事までです。
ダウンロードした文書が、Documentプロパティとして完全に解析されたかどうかを示すわけではありません。
(HTMLの解析はInternetExplorerではなく、MSHTMLによって行われます)


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -