【悲報】Adobe ReaderのWeb Pluginは使ってはいけない事が判明

Windows 2000で Adobe Reader X 以降の Web Plugin が正常に動作しないことについて以下の仮説を立ててみた。

Windows 2000の場合、デバイスコンテキスト を転送した場合、実際に表示されていないと転送することができない。
だから、Adobe Reader を丸ごと裏で起動して、転送してるだけじゃないか?って思ったのね

adp
起動すると2つの AcroRd32.exe ってプロセスが立ち上がるんだけど

一つはブラウザのフォルダから起動された
"C:\Program Files\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe" --type=renderer  /o /eo /l /b /id 9640
もう一つは、System32フォルダがカレントになっている
"C:\Program Files\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe" /o /eo /l /b /id 9640

9640は ブラウザの PIDなんで、明らかにレンダリングをターゲットのプロセスに対しておこなってる感じ(笑)

ためしに、このプロセスを落として、転送ができないようにしてみよう

adp2
Windows 2000と同じ状態になったよ!

試しに、PDF表示した状態で、画面内のプロセスIDを取得してみると…。

adp3
AcroRd32.exe だってかえってきたよ!

要するに、Adobe Reader のWeb Plugin はレシーバーになっていて、本体を起動して接続するだけの仕組みになってるんだ

直接実行時

AcrobatSDIWindow(books2009.pdf (保護) - Adobe Acrobat Reader DC) - AVL_AVView - AVL_AVView

Plugin
GoannaPluginWindow - Static(http://www.shikisensha.com/books2009.pdf (保護) - Adobe Acrobat Reader DC)
                                 +- AVL_AVView - AVL_AVView

こんな感じで中身丸ごと アドビリーダーに接続。

だから、Adobe Reader でPDF見るのなら、ダウンロードして、Adobe Reader を直接起動してから閲覧した方がメモリの消費量も、plugin コンテナと Adobe Reader のレシーバーを読み込まなくていい分軽くなるんだ。

消費メモリ(Plugin)
apd4
消費メモリ(直接起動)
apd4a

ほらね

誰だよ、こんなアホな仕様考えたの・ω・

内蔵の PDFリーダーか、まともな Plugin対応の PDF リーダー使った方が賢明だね!

ちなみに、Plugin 使うと、タブ閉じたときに、Adobe Reader のプロセスが残ってメモリ食ったままになる事もあるよ!

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です