勉強したことのメモ

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でtableタグをエクセルファイル(xlsx)としてダウンロードさせる方法

table内のデータを何らかのファイルでダウンロードさせたい。通常PHPでCSV ...

バニラJS対応(jQuery非依存)の画像遅延読み込みプラグイン「echo.js」の利用方法

あるサイトをブラウザの開発者ツールで見ていると「echo.js」と聞いたことの無 ...

無料でシンプルなアイコンを設置できる「Feather」の利用方法

ページ上にアイコンを表示したい場合Font Awesomeを使うことが多いが、個 ...

JavaScriptでリファラをチェックし、ホスト名と一致するかどうかで分岐処理する方法

ページアクセス時にリファラがホスト名と一致していれば何らかの処理を、一致しない場 ...