none
IE8の場合、作業の途中から画像データが表示しない。 RRS feed

  • 質問

  • パートナー向けコミュニティに投稿したのですが、行き詰っています。
    何かヒントとなる情報があれば、ご教授していただけたら幸いです。

    1. お問い合わせ概要
    下記環境で、途中でブラウザで画像データを表示できなくなりました。
    OSがWindows XP SP3上でブラウザがIE6とIE7では、問題なく画像データは表示しますが、IE8では画像データが表示しません。

    2. 製品とプラットフォームのバージョン(Edition 含む)とサービスパック
    [Web/APサーバー(2台のNLB構成)]
    Windows Server 2008 SP1 Standard Edition
    IIS7.0
    .NET Framework 2.0
    ASP.NET 2.0
    (全て64bit版)
    Seasar.NET

    [DBサーバー(クラスタリング構成)]
    Windows Server 2008 SP1 Enterprise Edition
    SQL Server 2008 Standard Edition
    (全て64bit版)

    [クライアント]
    Windows XP Professional SP3
    Internet Explorer 6,7,8
    (全て32bit版)

    3. エラーが表示される場合はエラーメッセージの内容(エラーコードが表示される場合はエラーコード含む)
    エラーは表示していませんが、問題となっている現象を説明します。

    弊社システムの機能の1つに画像データのページめくりの機能があります。
    IE6とIE7の場合は、連続で画像データのページめくりを行っても、ブラウザに画像データは表示します。
    しかし、IE8の場合、連続で画像データのページめくりを行った場合、30-50ページ目でブラウザに画像が表示しなくなります。

    画像データは複数のファイルにわかれており、各ファイルは15ページ前後です。
    1ファイル15ページの画像データを選択後、最後までページめくりを行ったら、次の画像データを選択します。
    このような操作を行い、30-50ページ目でブラウザに画像が表示しなくなります。

    弊社システムからログアウトして、IE8も終了します。
    その後、IE8で弊社システムに再ログインして、ページが表示しなくなった画像データを選択すると、画像データは表示してページめくりもできます。

    完全にブラウザの問題と切り分けることはできていませんが、ブラウザの違いにより弊社システムの動作が異なります。
    そのため、ブラウザが何らかの関係で関わっている可能性が高いです。

    4. お問い合わせの目的、ゴール
    IE8で画像データが表示しない問題の原因と対処方法を理解して、問題を解決することが目的です。

    ・IE8で過去に類似した障害が発生しているか知りたい。
    ・もし発生している場合は、エラーの原因と対処方法が知りたい。
    ・IE8のエラーの取得方法が知りたい。

    【追加情報】
    ----- ここから -----
    ページめくりをいている最中のタスクマネージャーの動きを見ていました。
    ページをめくるごとに、PF 使用量が増え、もっとも多いのは1.5GB前後でした。インターネット一時ファイルのフォルダの使用するディスク領域は、1024MBと設定しており、フォルダ内の空き容量は十分あり、HDの空き容量は100GB以上あります。インターネット一時ファイルのフォルダのフォルダには、表示したい画像ファイルが存在しています。IE8を終了すると、メモリは解放されます。

    異なるPCにIE8をインストールして動作検証を行ったのですが、マシンによってめくれるページ数が異なります。また、ごく稀に発生しないマシンもあります。

    IE8が画像データを抱え込み、使用するメモリ量が増加して、IE8のレタリングエンジンがおかしくなったのではないでしょうか。
    ----- ここまで -----

    2009年8月21日 7:54

回答

  • 取り急ぎ、回答ではありませんがご確認を。
    こちらはパートナー向けコミュニティとは異なり一般公開フォーラムです。
    内容から会社業務上の情報と思われる事項が幾つか見受けられますが、公開して問題ない情報かどうか、問題ある箇所は編集・削除してください。
    このフォーラムでは、問い合わせに際して会社名、質問者名は不要です。



    これだけですとアレですので、パッと思いつくことを一つ。
    とりあえずですが、IE8 で「ツール>開発者ツール」(あるいは F12)で立ち上がる開発者ツールでキャッシュのクリアができますので、そちらでキャッシュをクリアしつつ動きを見比べてみてはいかがでしょうか。
    もっと良い方法もありそうですが、こちら方面は疎いもので。


    MCITP(Database Developer/Database Administrator)
    2009年8月21日 9:00
  • なんとなく、メモリを食っていると、無理やりIE8にがんばろうとさせてもうまくいかない
    と思っているため、画像が表示されない原因を調査するわけではなく、
    何にメモリを消費しているかとその原因を突き止めた方がよいと考えています。

    以下の疑問は分かる分だけでよいですので、教えて下さい。


    【前提となる環境の確認】
    ・画像データのページめくりの機能
    ページめくりを実現する手段は何でしょうか?
    画面遷移(URL移動)なのか、それともJavaScript等でのデータの書き換えでしょうか?

    ・1ファイル15ページとは?30-50ページ目とは?
    1つのHTMLファイル内に15個imgタグが書いているという意味でしょうか?
    30-50ページ目とは、目安の値でしょうか。
    つまり、大体30ページ目ぐらいから画像を表示しなくなり、たとえ運よく30ページ目で表示されたとしても
    50ページ目までいけば、表示されなくなることが多いという意味でよいでしょうか?

    ・画像データの表示方法
    imgタグでしょうか?CSSのbackground-imageでしょうか?
    はたまた、Flashなどを経由した画像の表示でしょうか?

    ・その他ネットワーク構成
    HTTPなのかHTTPSなのか、keep-aliveONかOFFか、
    キャッシュ指定のON/OFF(metaタグやhttpヘッダやIEの設定)はどうなっていますでしょうか?


    【試してもらいたいこと】
    上から順(番号が若い順)に知りたい内容です。

    ①レジストリTabProcGrowthの値を1と0それぞれ設定して、メモリの増加の有無がどうなるか教えて欲しいです。
    http://social.technet.microsoft.com/Forums/ja-JP/internetexplorerja/thread/3c65fcfe-43ed-4ea5-8cf5-8adb50ddc508

    ②IE8で保持しているものは何か?
    本当に画像データかどうかを判別するために、
    画像の解像度が縦横1pxなものを用意し、同様の事象が発生するかどうかを教えて欲しいです。
    返却する画像すべてを上記のようなものにして調査をお願いします。
    目的としては画像の数なのか、それとも画像の中身によって変わるのかをはっきりさせたいのです。
    CSSで画像を読み込んでいるなら、CSSを読み込まないようにしてみるのもいいかもです。

    ③IEのメモリの内部構成の確認
    ollydbg(http://www.ollydbg.de/)にて、IE8のメモリが消費されているプロセスの方にattachし、
    「メモリーマップ」を選んで下さい(Mボタン)。
    色々出てきますが、サイズでソートすることで、何か分かることはないでしょうか?
    異様にサイズの大きいものがあったり、同じサイズのものが大量に存在したりしていませんか?
    前提として、すべての画像の解像度とbit数(24なのか8なのか等)を統一していて欲しいです。
    また、ページ遷移をして、変化した場所(文字の色が赤くなった部分)を見て何か分かることはないでしょうか?
    確認の前に念のため、IEのキャッシュのクリアをお願いします。
    (ollydbgは多機能なツールですが、使いたい機能はあくまでメモリーマップのサイズソート機能だけです)

    ④各種メモリーリーク検知ツールを使用してみる
    DripやIE Memory leak Detectorですかね。
    まぁ両方ともIE8に対応しているかあやしいとは思っています(特に後者)。
    (それぞれツールの癖に慣れるのに1人日かかる覚悟をお願いします)

    【その他】
    >IE8で過去に類似した障害が発生しているか知りたい。
    googleで「IE8 メモリリーク」で先頭20件を見ても、
    今回の事象に該当しそうなものは見つけられませんでした。

    以上、よろしくお願いします。

    2009年8月21日 12:35

すべての返信

  • 取り急ぎ、回答ではありませんがご確認を。
    こちらはパートナー向けコミュニティとは異なり一般公開フォーラムです。
    内容から会社業務上の情報と思われる事項が幾つか見受けられますが、公開して問題ない情報かどうか、問題ある箇所は編集・削除してください。
    このフォーラムでは、問い合わせに際して会社名、質問者名は不要です。



    これだけですとアレですので、パッと思いつくことを一つ。
    とりあえずですが、IE8 で「ツール>開発者ツール」(あるいは F12)で立ち上がる開発者ツールでキャッシュのクリアができますので、そちらでキャッシュをクリアしつつ動きを見比べてみてはいかがでしょうか。
    もっと良い方法もありそうですが、こちら方面は疎いもので。


    MCITP(Database Developer/Database Administrator)
    2009年8月21日 9:00
  • なんとなく、メモリを食っていると、無理やりIE8にがんばろうとさせてもうまくいかない
    と思っているため、画像が表示されない原因を調査するわけではなく、
    何にメモリを消費しているかとその原因を突き止めた方がよいと考えています。

    以下の疑問は分かる分だけでよいですので、教えて下さい。


    【前提となる環境の確認】
    ・画像データのページめくりの機能
    ページめくりを実現する手段は何でしょうか?
    画面遷移(URL移動)なのか、それともJavaScript等でのデータの書き換えでしょうか?

    ・1ファイル15ページとは?30-50ページ目とは?
    1つのHTMLファイル内に15個imgタグが書いているという意味でしょうか?
    30-50ページ目とは、目安の値でしょうか。
    つまり、大体30ページ目ぐらいから画像を表示しなくなり、たとえ運よく30ページ目で表示されたとしても
    50ページ目までいけば、表示されなくなることが多いという意味でよいでしょうか?

    ・画像データの表示方法
    imgタグでしょうか?CSSのbackground-imageでしょうか?
    はたまた、Flashなどを経由した画像の表示でしょうか?

    ・その他ネットワーク構成
    HTTPなのかHTTPSなのか、keep-aliveONかOFFか、
    キャッシュ指定のON/OFF(metaタグやhttpヘッダやIEの設定)はどうなっていますでしょうか?


    【試してもらいたいこと】
    上から順(番号が若い順)に知りたい内容です。

    ①レジストリTabProcGrowthの値を1と0それぞれ設定して、メモリの増加の有無がどうなるか教えて欲しいです。
    http://social.technet.microsoft.com/Forums/ja-JP/internetexplorerja/thread/3c65fcfe-43ed-4ea5-8cf5-8adb50ddc508

    ②IE8で保持しているものは何か?
    本当に画像データかどうかを判別するために、
    画像の解像度が縦横1pxなものを用意し、同様の事象が発生するかどうかを教えて欲しいです。
    返却する画像すべてを上記のようなものにして調査をお願いします。
    目的としては画像の数なのか、それとも画像の中身によって変わるのかをはっきりさせたいのです。
    CSSで画像を読み込んでいるなら、CSSを読み込まないようにしてみるのもいいかもです。

    ③IEのメモリの内部構成の確認
    ollydbg(http://www.ollydbg.de/)にて、IE8のメモリが消費されているプロセスの方にattachし、
    「メモリーマップ」を選んで下さい(Mボタン)。
    色々出てきますが、サイズでソートすることで、何か分かることはないでしょうか?
    異様にサイズの大きいものがあったり、同じサイズのものが大量に存在したりしていませんか?
    前提として、すべての画像の解像度とbit数(24なのか8なのか等)を統一していて欲しいです。
    また、ページ遷移をして、変化した場所(文字の色が赤くなった部分)を見て何か分かることはないでしょうか?
    確認の前に念のため、IEのキャッシュのクリアをお願いします。
    (ollydbgは多機能なツールですが、使いたい機能はあくまでメモリーマップのサイズソート機能だけです)

    ④各種メモリーリーク検知ツールを使用してみる
    DripやIE Memory leak Detectorですかね。
    まぁ両方ともIE8に対応しているかあやしいとは思っています(特に後者)。
    (それぞれツールの癖に慣れるのに1人日かかる覚悟をお願いします)

    【その他】
    >IE8で過去に類似した障害が発生しているか知りたい。
    googleで「IE8 メモリリーク」で先頭20件を見ても、
    今回の事象に該当しそうなものは見つけられませんでした。

    以上、よろしくお願いします。

    2009年8月21日 12:35
  • 皆さん、ご回答ありがとうございます。

    開発者ツールでキャッシュのクリアの機能があるとは知りませんでした。

    IEのメモリの内部構成の確認や、レジストリの変更も参考になりそうです。

    さっそく、試してみたいと思います。

    以上、よろしくお願いいたします。

    2009年8月24日 6:11
  • その後、問題の切り分けはつきましたでしょうか?
    メモリの増加原因は画像だというなんらかの確証は得られましたでしょうか?

    試してもらいたいこととして、IE7互換モードで動作させるとどうなるかも知りたいです。

    なんとなく、IE8の問題ではなく、アプリケーション側の問題だと思っていますが、
    IE8が問題なのであれば、色々対応を考えないといけないので、気になっています。
    2009年8月26日 13:57
  • こんにちは、フォーラムオペレーターの三沢健二です。

    nagino さん、(´・ω・`) さん、アドバイスありがとうございました!

    Rui Higashiyama さん、その後いかがでしょうか?
    今回、みなさんから案内いただいた情報が、参考になられたとの事でしたので、勝手ながら [回答としてマーク] を付けさせていただきました。
    よろしければ、その後のご状況などをご投稿いただけるととても嬉しいです(^^)


    それでは、今後とも TechNet Forum をよろしくお願いします。

    ______________________________________
    マイクロソフト株式会社 フォーラム オペレーター 三沢健二

    2009年9月24日 5:42
    モデレータ