勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

JavaScriptでFlashのバージョンを取得する方法

   2024/05/22  JavaScript

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;
}());

 - JavaScript

  関連記事

JavaScriptの三項演算子
JavaScriptの三項演算子

いつもと違う書き方? 使い方の三項演算子が あったのでメモ。 ■ソース var ...

Leafletで「leaflet.sprite」プラグインを導入してマーカーの色を変更する方法
Leafletで「leaflet.sprite」プラグインを導入してマーカーの色を変更する方法

LeafletとOpenStreetMapでマップ上にマーカーを複数設置したい。 ...

JavaScriptの変数宣言であるvar / let / constの使い分けについて
JavaScriptの変数宣言であるvar / let / constの使い分けについて

JavaScript関連の調べ物をしていた際、変数の宣言時にvarではなくlet ...

バニラJavaScriptのDOMContentLoadedとは?
バニラJavaScriptのDOMContentLoadedとは?

jQuery等を用いない素のJSで書かれたプログラムを触る機会があり、そのソース ...

jQueryでHTMLの特定要素をループ時に逆順で処理する方法
jQueryでHTMLの特定要素をループ時に逆順で処理する方法

jQueryでリスト(li)タグ等の特定要素をeach()でループ処理する場合、 ...