flashPlayer10をインストールするとflashが見れない現象があったのでメモ。
今回のケースはflashのスクリプトの中で
System.capabilities.versionを使ってバージョンが6以下なら新しいflashPlayerをインストールするようにアクションスクリプトを記述してたのが問題点でした。
--------------------------------------------------------------------
myVersion = System.capabilities.version;
Ver = int(substring(myVersion , 5, 1))+0.1*int(substring(myVersion , 7, 1))+0.001*int(substring(myVersion , 9, 2));
traceしてみるとmyVersion は「WIN 9,0,45,0」と出力します。
でVerはと言うと9.045と出るのですが、もしこれがflashPlayer10なら
「WIN 10,0,12,36」とmyVersionは最初の値は半角スペースの一文字目、つまり”1”をとるのでバージョンが1と認識されてしまう。
...でこんな感じに書き換えました。
myVersion = System.capabilities.version;
trace(myVersion );
if (myVersion.substr(4, 1) == "1") {
Ver = myVersion.substr(4, 2);
trace(intVer);
} else {
Ver = myVersion.substr(4, 1);
trace(intVer);
}
//出力結果
WIN 9,0,45,0
9
と、いうことでsubstr()で取得した文字列が”1”ならmyVersionの5、6文字目。それ以外なら5文字目だけ取得してプレーヤーのバージョンを判別せよとしました。
ひとまず今回はこれでOK。
javascriptでflashを書き出す方法のものはまだ検証してませんが...
この記事にトラックバックする