Flex Builder3 & Flash Player 10のデバッグ時のエラー問題、一応の解決へ(※Google Chrome除く)

環境導入以来ちょこちょこと悩まされ続けていた上記の問題について、(自分の中での)情報の整理、問題の解決にひとまず至ったのでエントリ。

導入されているFlashのバージョンは上記のページ等で確認する事が出来ますが、そもそもの前提として『ブラウザ毎にFlash Playerのインストールが必要である』という点について自分の中で曖昧な理解のままでした。


Flex上でFlash関連のデバッグを行う際はデバッグ版のFlash Playerをインストールする必要があり、以下のサイトで入手可能。

[Flash Player 10(デバッガバージョン)(fp10_debug_archive.zip, 141 MB)]をダウンロード。2010/04/22時点での最新版バージョン(解答フォルダ内に含まれるflash playerの最新バージョン)は10.0.45

解答フォルダ内に含まれるreadme.txtを見ると、ブラウザ毎に利用可能なexeファイルの記載が。

Windows 9x/ME/NT/2000/XP
- Internet Explorer: flashplayer10r45_2_winax_debug.exe
- Netscape: flashplayer10r45_2_win_debug.exe
- Standalone: flashplayer10r45_2_win_sa_debug.exe

上からIE, IE以外(?), スタンドアローン版。

今回は、これまでの経緯でプラグインを入れたり削除したりでごちゃごちゃになってしまっていたので、一旦全部クリアして入れ直す、という方法を取ることに。

Flash Playerの削除(アンインストール)

まずはFlash Playerの全クリア。以下のサイトからアンインストーラを入手。(uninstall_flash_player.exe, 203KB)
DLしたらファイルを起動、アンインストールを実施。

Firefox, Opera, Safari

最近は専らブラウザはGoogle Chromeを使っていたのですが、何やらFlash Playerとは相性悪いみたいな事が書かれていたので、まずはそれ以外のブラウザから攻めてみるべ、という事でFirefoxでの動作確認・問題解決から着手する事に。

  • Flash Playerアンインストール後、バージョン確認を行ったところ[Flash Playerが必要です]の表示。これは問題無し。

  • 現在の最新バージョンは10.0.45ということなので、導入版・スタンドアロン版共にこのバージョンを使う事にする。
  • アーカイブ(fp10_debug_archive.zip)を解凍して出て来たflashplayer10r45_2_win_sa_debug.exeをローカルにコピー(例:C:/tool/flashplayer10r45_2_win_sa_debug.exe)し、swfファイル実行時に使うファイルに指定。(ファイル右クリック,[プログラムから開く]→[既存プログラムからの選択]→[参照]→コピーしたexeファイルを選択)
  • Flex Builder3起動。

  • 対象プロジェクトを右クリックし、コンパイラの設定を変更。
    • Flexコンパイラ
      • 追加コンパイラ引数に[-target-player=10.0.45]を追加。
      • HTMLラッパーの内容を有効化、対応するバージョン番号(10.0.45)を設定。


  • プロジェクトをデバッグ実行。以下のダイアログが表示される。まぁスタンドアロン版しか触ってないので当然出るよね、って感じです。


  • そのまま進めるとブラウザにこういうメッセージが表示される。じゃあインストールしましょう。


  • アーカイブファイル内の10r45_2/flashplayer10r45_2_win_debug.exeを実行、Flash Playerをインストール。
  • 各種ブラウザ、IDEを再起動後、再度デバッグ実行を試す。今度は上手く行っているようです。

Internet Explorer

  • デバッグ時のブラウザをIEに変更し、デバッグ実行。すると、Flash Playerが見つからない旨のダイアログが表示される。


  • バージョンを確認してみると、やはり対応はされていない模様。


  • アーカイブファイル内の10r45_2/flashplayer10r45_2_winax_debug.exeを実行、IE用のFlash Playerをインストール。

インストール完了後再度確認してみると、バージョン及びデバッグ版であること(Debug Player = YES)が確認出来ます。



Google Chrome

  • まずは現在の状態を確認。すると既にバージョンが表示されています。IE以外って事でChromeFirefox等と同じ括りにされてるのかな?と思うのですが、良く見るとバージョンが異なります(10.1.53.7 / Firefox等は10.0.45.2)。
  • このあたりを参考にpluginsフォルダを削除したりしてみたのですが、自分の環境では状況は変わらず...
  • ブラウザに導入されているプラグインを調べてみようと思い、アドレスバーに「about:plugins」と入力し、プラグイン一覧を表示。すると、Flash(Shockwave Flash)でバージョン違いのものがインストールされてました。


  • 片方を無効化(10.1.53.2)し、再度バージョンを確認。すると、今度は他ブラウザと同様のバージョンが表示されました。デバッグ実行も問題無さ気です。

Google ChromeFlash Playerとの相性の微妙さは気になりますが、これで一応自分の中ではひとまずの決着を見たような気がします。気付いた→調査完了に夜中遅い時間まで掛かってしまったけど、時間を費やした甲斐がありました。


上記までの検証内容は昨日ベースを書き上げたものですが、今日(記事UP当日)検証ブラウザ色々変えてやってみたらまた[Flash Player9を入れてください、もしくは…]のダイアログが表示されてしまっていました。

ブラウザ対応のデバッグFlash Playerを再度実行しインストールさせれば元通り動くようにはなったりもしますが、やったらやったでFlex Builderのブラウザ設定が消える等(笑)、予想外の挙動を見せてしまいました。

色々試行錯誤してみてるのですが、Google Chromeのみいまいちすっきりしない対応・挙動になってしまいます。

根が深そうな感じではありますので、とりあえずFirefoxを主としたブラウザで確認を取り、最終段階でChromeの動作確認を取る、という形にした方が無難かも知れないなぁ…。という訳でGoogle Chromeの項は取り消し状態としておく。