皆様いつもお世話になっております。
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
JavaScriptファイルが7つほど読み込まれますが、これらも保存していますか?
パス指定が入っているので、ただ単にindex.htmだけ保存してもエラーになりますね。
絶対URLで書かれてあれば、index.htmだけでよいでしょうけど。
にしのさん。早速のご指導有り難うございました。
ジャバスクリプトは危ないという既成概念がありましたので保存していませんでした。(#ジャバスクリプトの理屈がわかっていない)。
早速保存するようにプログラムを作り直します。
また、教えてください。m(_ _)m
では。
にしのさん、先刻は有り難うございました。
そのご、プログラムを修正して、スクリプトのファイル、cssファイルもDLしてリンクも通るようにしたのですが、
やはりだめでした。
そこで、IEの「ファイル」→「名前を付けて保存」で保存したhtmlファイルを読み込むとエラーは出ません。
その際、付属ファイルはfilesフォルダに保存されているため、ダウンロードしたファイルをつきあわせたところ種類も数も同じでした。
もう少し調べてみます。
では。
にしのさん、自己レスです。
もう一度細かくプログラムを修正して、うまくいきました。
原因はスクリプトのファイルをDLすることと、そのパスを修正しました。
有り難うございました。
ツイート | ![]() |