========プログラム(...は省略を示す)
Public Class Form1
Private Sub Form1_Load...
Me.Location =...
WebBrowser1.Navigate("http://www.google.co.jp/news?ned=tjp")
NavigateWait1()
Timer1.Interval = 1000
Timer1.Enabled = True
End Sub
Private Sub NavigateWait1()
... 'ページの読み込みがが完了するのを待つ
End Sub
Private Sub Timer1_Tick...
Timer1.Enabled = False
WebBrowser1.Refresh()
Timer1.Interval =...
Timer1.Enabled = True
End Sub
Private Sub btnS1_Click...
Select Case Timer1.Enabled
Case True
Timer1.Enabled = False
Case False
Timer1.Enabled = True
End Select
End Sub
End Class
========エラーの内容
Internet Explorer スクリプト エラー(エラーウィンドウのタイトル)
ライン: 45(プログラムを見ても、当該の行は空行です)
文字: 1
エラー: オブジェクトを指定してください。
コード: 0
URL: htt://www.google.co.jp/news?ned=tjp(ソースで、これの「?」以下(「?」を含む)を削除すると、エラーは起こりません)
このページのスクリプトを実行し続けますか? はい いいえ
該当プログラムのコード自体にまずいところは見当たりません。
まずいのはURLでしょう。
>URL: htt://www.google.co.jp/news?ned=tjp
>(ソースで、これの「?」以下(「?」を含む)を削除すると、エラーは起こりません)
このURLだと、グーグルNewsサイトのサーバーが期待するパラメータ(URLのクエリ部分)が不足しているのではないでしょうか。
そのため、HTMLソースが不完全な形で送信されてきて、ブラウザがエラーを検知しているのではないかと思います。
とりあえず、
WebBrowser1.Navigate("http://www.google.co.jp/news?hl=ja&ned=tjp&q=")
とでもしてみてください。
該当プログラムのコード自体にまずいところは見当たりません。
まずいのはURLでしょう。
>URL: htt://www.google.co.jp/news?ned=tjp
>(ソースで、これの「?」以下(「?」を含む)を削除すると、エラーは起こりません)
このURLだと、グーグルNewsサイトのサーバーが期待するパラメータ(URLのクエリ部分)が不足しているのではないでしょうか。
そのため、HTMLソースが不完全な形で送信されてきて、ブラウザがエラーを検知しているのではないかと思います。
とりあえず、
WebBrowser1.Navigate("http://www.google.co.jp/news?hl=ja&ned=tjp&q=")
とでもしてみてください。
ありがとうございます!本日はもう就寝しますので、明日試して見ます。具体例の表示はとくにありがたいです。解決できそうな気がします。URLがまずいというのはだいたい絞れでいたので、足りない情報を見事に補完してくださいました。
エラーはVBの方のエラーではなく読み込んだ側でのJSまたはVBSのエラーです。
原因はGoogleニュースバグで最下部に
LogBrowserStats();
というJavaScriptがごく稀に出現します。
このファンクションは存在しないのでエラーになります。
通常のIE(VB内のブラウザーでなく)で何回か開いても同じ症状が出るはずです。
おそらくUrchinか何かのスクリプトだと思うのですが、、、
簡単な対応はJSを無効にする、またはスクリプトを削除する方法ですかね。
↓これがそのバグです。
Google ホーム</font><script>
ありがとうございます。こちらは私の現在の知識では少し理解できない部分があるのですが、近い将来非常に役に立つお答えかと思っています。ありがとうございました!
ありがとうございます!本日はもう就寝しますので、明日試して見ます。具体例の表示はとくにありがたいです。解決できそうな気がします。URLがまずいというのはだいたい絞れでいたので、足りない情報を見事に補完してくださいました。