JavaScriptでFlashのバージョンを取得する方法
2024/05/22
Flashのバージョン取得をjavascriptで行うソースコードのを以下にメモ。
ソースコード
var flashVer = (function() {
if (navigator.plugins && navigator.mimeTypes['application/x-shockwave-flash']) {
var plugin = navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin;
if (plugin && plugin.description) {
var ver = plugin.description.replace(/^[A-Za-z\s]+/, '').replace(
/(\s+r|\s+b[0-9]+)/, ".");
}
} else {
var x = '';
try {
var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
x = axo.GetVariable("$version");
} catch (e) {
try {
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
x = "WIN 6,0,21,0";
axo.AllowScriptAccess = "always";
x = axo.GetVariable("$version");
} catch (e) {
if (!x.match(/^WIN/)) {
try {
axo = null;
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
x = axo.GetVariable("$version");
} catch (e) {
if (axo) {
x = "WIN 3,0,18,0";
} else {
try {
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
x = "WIN 2,0,0,11";
} catch (e) {
x = "WIN 0,0,0,0";
}
}
}
}
}
}
ver = x.replace(/^WIN /, '').replace(/,[0-9]+$/, '').replace(/,/g, '.');
}
return (ver == '0.0.0') ? false : ver;
}());
var flashVer = (function() {
if (navigator.plugins && navigator.mimeTypes['application/x-shockwave-flash']) {
var plugin = navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin;
if (plugin && plugin.description) {
var ver = plugin.description.replace(/^[A-Za-z\s]+/, '').replace(
/(\s+r|\s+b[0-9]+)/, ".");
}
} else {
var x = '';
try {
var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
x = axo.GetVariable("$version");
} catch (e) {
try {
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
x = "WIN 6,0,21,0";
axo.AllowScriptAccess = "always";
x = axo.GetVariable("$version");
} catch (e) {
if (!x.match(/^WIN/)) {
try {
axo = null;
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
x = axo.GetVariable("$version");
} catch (e) {
if (axo) {
x = "WIN 3,0,18,0";
} else {
try {
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
x = "WIN 2,0,0,11";
} catch (e) {
x = "WIN 0,0,0,0";
}
}
}
}
}
}
ver = x.replace(/^WIN /, '').replace(/,[0-9]+$/, '').replace(/,/g, '.');
}
return (ver == '0.0.0') ? false : ver;
}());
var flashVer = (function() { if (navigator.plugins && navigator.mimeTypes['application/x-shockwave-flash']) { var plugin = navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin; if (plugin && plugin.description) { var ver = plugin.description.replace(/^[A-Za-z\s]+/, '').replace( /(\s+r|\s+b[0-9]+)/, "."); } } else { var x = ''; try { var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); x = axo.GetVariable("$version"); } catch (e) { try { axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); x = "WIN 6,0,21,0"; axo.AllowScriptAccess = "always"; x = axo.GetVariable("$version"); } catch (e) { if (!x.match(/^WIN/)) { try { axo = null; axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3"); x = axo.GetVariable("$version"); } catch (e) { if (axo) { x = "WIN 3,0,18,0"; } else { try { axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); x = "WIN 2,0,0,11"; } catch (e) { x = "WIN 0,0,0,0"; } } } } } } ver = x.replace(/^WIN /, '').replace(/,[0-9]+$/, '').replace(/,/g, '.'); } return (ver == '0.0.0') ? false : ver; }());
関連記事
-
-
JavaScriptにて「loglevel」ライブラリを利用して環境及びレベルによりログを出し分けする方法
JavaScriptにて何らかの確認の際にconsole.logを使うことが多い ...
-
-
「slick」で作成したスライダー画像にランキングの順位を表示する方法
「slick」で作成したスライダー画像に対して、ランキングの順位を表示したいとい ...
-
-
Leafletで表示したマップにジェスチャーハンドリングを追加する方法(Leaflet.GestureHandling)
GoogleMapをズームする際にPCだと「Ctrl+スクロール」、スマホだと「 ...
-
-
「slick」でarrows(次に進む・前に戻るボタン)を設定しても表示されない場合の対応方法
「slick」で画像スライダーを表示する際にarrows(次に進む・前に戻るボタ ...
-
-
FileReader APIを用いて画像をアップロードせずにサムネイル表示
以前にFile APIを用いてファイル名やサイズ、形式(拡張子)を取得するメモを ...