ひっと

コピーされたFlashの起動を禁止する ActionScript(AS3)

~ Flashアプリ、ゲームのためのAS3サンプルプログラム集 ~

ローカルや他所のドメインからのFlash起動を禁止する

Flashは起動した時にswfファイルのURLが分かるので、これを利用してローカルマシンなどにコピーされたswfファイルを起動するのを防ぐことができます。
ローカルマシンや別サーバーにコピーされたswfに対して起動を禁止できますが、直リンクに対しては効果ありません。

AS3 サンプル ソースコード

root.loaderInfo.urlにswfファイルのパスが入ります。
ドメイン文字列があるかどうかで、コピーされたSWFでないかチェックします。


package
{
    import flash.display.LoaderInfo;
    import flash.display.Sprite;
    import flash.text.TextField;

    [SWF(width="400", height="300")]
    public class Main extends Sprite
    {

        public function Main()
        {
            var t:TextField = new TextField();
            t.width = 400;
            this.addChild(t);

            var t2:TextField = new TextField();
            t2.width = 400;
            t2.y = 40;
            this.addChild(t2);

            var info:LoaderInfo = root.loaderInfo;

            t.text = "swfファイルの場所\n"+info.url;

            if( info.url.indexOf("sousakuba.com") != -1 ) {

                t2.text="sousakuba.comから起動しています";

            } else {

                t2.text="sousakuba.comから起動してません";
            }


        }
    }
}
目次へ
52888