5 月 09

FLASHエラー画面
弊社のホームページを見ると、FLASHのバナーが正しく表示されていません。
(現在は、正しく表示されます。:5月10日現在

□麻生教育サービス
http://www.aso-education.co.jp/
□麻生オープンスクール
http://www.asoopenschool.jp/

トップページのFLASHに表示されるメッセージは、「最新のFLASH PLAYERをダウンロードしてください」というものですが、最新のFLASH PLAYERをダウンロードしても正しく表示されません。

これは、見ている方のFLASH PLAYERのバージョンが古いわけではなく、こちらのFLASHコンテンツの問題です。

この問題は、ADOBEが出しているFLASH PLAYERのバージョンが10になり、皆さんが最新のFLASH PLAYERでアクセするようになってから発生していたので、私はうすうす原因に気づいていました。FLASH PLAYERのバージョンチェックに問題があるのです。

ADOBEもFLASH PLAYERのバージョン10をリリースしたときに注意を促しています。
http://www.adobe.com/jp/devnet/flashplayer/articles/ver_check_flp10.html

簡単にお話しすると、次のようになります。
関数を使用してPCにインストールされているFLASH PLAYERのバージョンを取得することができますが、取得すると次のような結果が帰ってきます。

WIN 8,0,24,0

「WIN」は、そのPCのプラットフォーム(OS)を表しています。
「8」がメジャーバージョン、すなわちFLASH PLAYERのバージョンを表しています。

バージョンをチェックする場合は「8」をチェックすればいいということになります。
このとき、プログラムで「5文字目がバージョン番号」となっていると、まずいことが起こるのです。

FLASH PLAYERのバージョンが10の場合に、関数でバージョンを取得すると次のような結果が帰ってきます。

WIN 10,0,2,54

先ほどと同様に、「5文字目がバージョン番号」とすると「1」となってしまうのです。

さらに、見ている人のOSがUNIXだと以下のような結果が帰ってきます。

UNIX 5,0,55,0

この場合は、FLASH PLAYERのバージョンが10でなくても正しく処理できません。
「5文字目がバージョン番号」とすると空白になってしまうからです。

正しく、処理を行うためにはいろいろなプログラミングがあると思いますが、
ADOBEでは以下の方法を紹介しています。

「初めの空白の次の文字から、次の”,(カンマ)”の間がバージョン番号」

これって、かつての西暦2000年問題に似ています。
「プログラムが西暦2000年まで使われるわけがないので下2ケタの処理で問題ないでしょう」的な発想です。このFLASHコンテンツが作られたときはFLASH PLAYER 6が最新でしたから、FLASH PLAYERが10になるまでこのコンテンツが使われることを想定しなかったのでしょう。
作成した人は、バージョンが2ケタになると処理がおかしくなることは分かっていたはずです。ただ、そんなに長く使われることもないだろうし、もしそうなったらそのとき対応すればいいと思ったはずです。西暦2000年問題のときもそうだったから…

written by admin