Internet ExplorerでPDFを開くとエラーが出て困っていた

Windows XP, IE6.0, Adobe Acrobat 6.0 professionalで、いつの頃からか、一部のPDFファイルを開こうとすると、インターナルエラーがIEで発生して、ブラウザが閉じてしまう現象が起きていた。ウェブのニュースでAdobeがその不具合を修正した、と報じられたので、「Acrobat 6.0 professionalにパッチを当て」ようと思ったら、「必要なものが参照できません」と言われて頓挫した(これは以前から)。では、無償のAdobe readerだけとって来よう、と思い、Reader 7.0をダウンロードしたけれど、PDFを開けようとしてIEのインターナルエラーが出る現象は変わらなかった。この不具合は、6.0 professionalとの不整合のままなのか、IEからreader 7.0が呼ばれるようになったけれども不具合だけは新版に継承されているのかの区別はつかなかった。念のため、PCを再起動してみたけれど、事情は変わらなかった。ウェブに解決策を求めたら、こんな記事があった。レジストリファイルをいじれ、という。こわかったけれど、やってみよう、ということで、レジストリに関する記事を参考にして、以下のような作業を行った。

  1. WINDOWSパソコンのC:\WINDOWSにある、REGEDIT.EXE起動
  2. HKEY_CLASSSES_ROOT|MIME|Database|Content Type|application/pdfがあることを確認
  3. 記事は、これを削除すればPDFファイルがIEで表示される、という書いていたが、そんな恐ろしいことはできないな、と思ったので、とりあえず、*****| application/pdfというフォルダ(様)の名前を ****| application/pdf_bkRY と書き換えた。ちなみに、****| application/pdfの中には、3つのファイルがある模様で、(規定).REG_SA (値の設定なし)、CLSID.REG_SZ {ごちゃごちゃした名前(WINDOWSのユーザを示している雰囲気の表記}、Extension.REG_SZ .pdf、となっていた。
  4. このフォルダの名前変更をしたら、今まで、開こうとするとIEのインターナルエラーが出ていたPDFページの表示要求でIEは閉じなくなったが、ブラウザの左上隅に『画像だけど、中身を表示していないよ』マークが表示されるようになった。ほうら、****| application/pdfを削除しなくてよかったよ、と何の解決もしないのに、ささやかな幸せ感にひたりつつ、****| application/pdf_bgRYを元の名前に戻しました。
  5. また、IEのインターナルエラーが出ることでしょう、とPDFページにアクセスしたら、あら、不思議、今度は閉じずに開くじゃありませんか!
  6. 解決!と思って、いさんで、再度IEをアイコンから立ち上げなおして、インターナルエラーの出たPDFのサイトに行ったら、!!!!またもやインターナルエラー。なんでやねん。
  7. 試行錯誤の末、わかっていることは、
  • IEを立ち上げるときに、HKEY_CLASSSES_ROOT|MIME|Database|Content Type|application/pdfがない(HKEY_CLASSSES_ROOT|MIME|Database|Content Type|application/pdfが別名になっている)と、IEは.pdfというファイルをこの拡張子に連結されたAcrobat readerで開けない、ということ。
  • IEを立ち上げた後でHKEY_CLASSSES_ROOT|MIME|Database|Content Type|application/pdfの別名を元に戻すと、表示可能になり、その後は、たんたんとPDFファイルを開き続けること
  • IEを立ち上げるときに、この****| application/pdfがあり、PDFファイルを開こうとすると、インターナルエラーで死ぬこと
  1. 言い換えると、****| application/pdfの中身に不具合があって、IE立ち上げ時にここを参照した内容には『致命的な』誤りが含まれるけれど、pdfファイルをacrobat readerに連結するための情報は持っていることがわかる。つまり、****| application/pdfはないといけないけれど、その中にあるファイル・情報に不備があるから、それを交換すればいいことがわかる、でもどーーやって???