ローカルファイルをWebBrowserで開くとエラーの場合は

解決


武田  2005-10-26 05:13:51  No: 18248

皆様いつもお世話になっております。
WebページをURLDownloadToFile()でダウンロードして、保存したファイルをWebBrowser1.Navigate()で表示させているのですが、次のようなエラーが出るページが時々あります。(http://www.borland.co.jp/など多数は正常に表示します。)
「このページのスクリプトでエラーが発生しました。」ライン20 文字  1 エラー(オブジェクトを指定してください)  コード  0  URL  (ファイルの場所で場合による)
たとえば下記の例のニコンの製品ページなどです。
AppPath := ExtractFilePath(Application.ExeName);
・・・・
begin
  indexURL := 'http://www.nikon-image.com/jpn/products/camera/digital/coolpix/index.htm';//'http://homepage2.nifty.com/Mr_XRAY/';
  URLDownloadToFile(nil, PAnsiChar(indexURL+#0), PAnsiChar(AppPath+'index.html'+#0), 0, nil);
end;
表示にはuses節に、URLMONを加えてWebBrowser1を使っています。
begin
    WebBrowser1.Navigate(AppPath+'index.html');
end;
IEで開くと正常に開きます。IEは画面上にセキュリティ上制限している旨の表示が出ますがクリックすると表示します。
ソースファイルのミスでもないようですが、セキュリティ上の何かスイッチがあるのでしょうか。
よろしくご指導ください。m(_ _)m


にしの  2005-10-26 06:05:33  No: 18249

JavaScriptファイルが7つほど読み込まれますが、これらも保存していますか?
パス指定が入っているので、ただ単にindex.htmだけ保存してもエラーになりますね。
絶対URLで書かれてあれば、index.htmだけでよいでしょうけど。


武田  2005-10-26 21:04:21  No: 18250

にしのさん。早速のご指導有り難うございました。
ジャバスクリプトは危ないという既成概念がありましたので保存していませんでした。(#ジャバスクリプトの理屈がわかっていない)。
早速保存するようにプログラムを作り直します。
また、教えてください。m(_ _)m
では。


武田  2005-10-27 06:53:16  No: 18251

にしのさん、先刻は有り難うございました。
そのご、プログラムを修正して、スクリプトのファイル、cssファイルもDLしてリンクも通るようにしたのですが、
やはりだめでした。
そこで、IEの「ファイル」→「名前を付けて保存」で保存したhtmlファイルを読み込むとエラーは出ません。
その際、付属ファイルはfilesフォルダに保存されているため、ダウンロードしたファイルをつきあわせたところ種類も数も同じでした。
もう少し調べてみます。
では。


武田  2005-10-27 09:32:56  No: 18252

にしのさん、自己レスです。
もう一度細かくプログラムを修正して、うまくいきました。
原因はスクリプトのファイルをDLすることと、そのパスを修正しました。
有り難うございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加