2012-08-28 13 views
5

Flash Playerで "Create Projector"オプションを使用して.swfファイルから.exeファイルを作成する作業を自動化しようとしています。私はantビルドファイルを使用してそれを達成しようとしています。誰かが私を正しい方向に向けることができますか?試してみましたが、Flash Playerで使用できるコマンドライン引数と、.swfを.exeに変換する方法が見つかりませんでした。"Create Projector"へのFlash Playerのコマンドライン引数

注:実行時にFlash Playerで使用する必要があります。サードパーティのプレーヤー/ソリューションは必要ありません。

+0

プロジェクターを作成するためのコマンドラインオプションはありません。 Flash Professionalを使用して行う必要があります。キャプティブランタイム機能を使用してexeを作成するAdobe AIRアプリケーションの作成を検討することをおすすめします。コマンドラインまたはANTビルドでtahtを実行できるはずです。 – JeffryHouser

+0

@ www.Flextras.comプロジェクタファイルを作成するためにFlash Professionalは必要ありません。 Flash Playerのメニューオプションで、ネイティブアプリケーションを作成することができます。私はコマンドライン引数として.swfファイルをとり、.exeファイル(Windowsの場合)または.appファイル(OSXの場合)を出力するFlash Playerのコマンドライン引数を探しています。 –

+0

私はまだアドビがスタンドアローンプレーヤーを配布したことを知らなかった。それにもかかわらず、私はこれがコマンドラインでできるとは思わない。 Captive RuntimeでAdobe AIRを使用するように私の提案を繰り返します。 – JeffryHouser

答えて

-2
 
Note: The Askee did like the answer:

SWF's as SWF's for EXE's.? I would say that is native to Adobe Flash, plus there has always been ANT 'Build Commands' -- as well as -- ITASCA in use for these processes (now deprecated). The main positive outcome for your situation is that I already had code that I used for something similar, so I added it to github - Take a look, it is very straightforward with comments and instructions: Note, the Application Manifest files along with custom **bat** files allow the /exe files to be generated from your action-script within **Main.as and application.xmL https://github.com/leonardo-m-mendevil/esexes.git **

  • @original:サックス、S
  • @notes:AS2とAS3に準拠し、
  • @notes:足場フレームワークに基づい
  • @github:https://github.com/stevensacks/Gaia-Framework/wiki/_history
  • @notation:JSFLを使用する:元:プロフィール設定を公開:v2:SACKS:MARCH 26、2008 / /
  • @author:エディ・マルティネス
  • @Update:.EXE /プロジェクターを生成
  • @using:.as3 || .swf FileLoader || .jsfl
  • @revision:2013年7月
  • @info:ガイアのJSFL足場に由来する改変【ガイアの足場JSFL]
  • @framework:https://github.com/stevensacks/Gaia-Framework/wiki/_history
これは、わずかな変更
  • @infoあります

    function setPPS(F1, ActionVersion) 
    { 
    
         if (fl.fileExists(F1) 
         { 
           var _x, _f, _t, _d; 
    
           fl.openDocument(F1); 
           var file_n = F1.split("/").pop(); 
           var path_f = F1.split(file_n)[0].join("/"); 
            file_n = file_n.split(".")[0]; 
           var pt = path_f + "/_Profile_._x"; 
           fl.getDocumentDOM().exportPublishProfile(pt); 
           _x = FLfile.read(pt); 
           _f = _x.indexOf("<defaultNames>"); 
           _t = _x.indexOf("</defaultNames>"); 
           _d = _x.substring(_f, _t); 
           _x = _x.split(_d).join("<defaultNames>0"); 
           _f = _x.indexOf("<flashDefaultName>"); 
           _t = _x.indexOf("</flashDefaultName>"); 
           _d = _x.substring(_f, _t); 
           _x = _x.split(_d).join("<flashDefaultName>0"); 
           _f = _x.indexOf("<flashfile_n>"); 
           _t = _x.indexOf("</flashfile_n>"); 
           _d = _x.substring(_f, _t); 
    
           var p3i = "../"; 
           if (file_n.indexOf("/") > -1){ 
            var splitPath = file_n.split("/"); 
             splitPath.length--; 
            var i = splitPath.length; 
            while (i--) { p3i += "../"; } 
           } 
           _x = _x.split(_d).join("<flashfile_n>" + p3i + "deploy/" + file_n + ".swf"); 
           var types = {}; 
            types.projectorWinfile_n = "exe"; 
            for (var n in types) { 
             _f = _x.indexOf("<" + n + ">"); 
             _t = _x.indexOf("</" + n + ">"); 
             _d = _x.substring(_f, _t); 
             _x = _x.split(_d).join("<" + n + ">" + file_n + "." + types[n]); 
            } 
    
            _f = _x.indexOf("<ActionScriptVersion>"); 
            _t = _x.indexOf("</ActionScriptVersion>"); 
            _d = _x.substring(_f, _t); 
            _x = _x.split(_d).join("<ActionScriptVersion>" + ActionVersion); 
            _f = _x.indexOf("<PackageExportFrame>"); 
            _t = _x.indexOf("</PackageExportFrame>"); 
            _d = _x.substring(_f, _t); 
            _x = _x.split(_d).join("<PackageExportFrame>1"); 
    
            if (ActionVersion == 2) { 
             _f = _x.indexOf("<PackagePaths>"); 
             _t = _x.indexOf("</PackagePaths>"); 
            } else { 
             _f = _x.indexOf("<AS3PackagePaths>"); 
             _t = _x.indexOf("</AS3PackagePaths>"); 
            } 
            _d = _x.substring(_f, _t); 
            var cpt = "./"; 
            if (file_n.indexOf("/") > -1){ 
             cpt = ""; 
             var t4 = file_n.split("/"); 
              t4.length--; 
             var i = t4.length; 
             while (i--){ 
              cpt += "../"; 
             } 
            } 
            switch(ActionVersion){ 
             case 2:       
              _x = _x.split(_d).join("<PackagePaths>" + cpt + "classes"); 
             break; 
             case 3: 
              _x = _x.split(_d).join("<AS3PackagePaths>" + cpt + "classes"); 
            } 
            function writeAllDOM(xstrg,pt){ 
             FLfile.write(pt, xstrg); 
             fl.getDocumentDOM().importPublishProfile(pt); 
             fl.saveDocument(fl.getDocumentDOM(), cpt); 
             fl.getDocumentDOM().publish(); 
            } 
    
            FLfile.remove(fPath); 
           } 
    } 
    
  • +0

    -1;私はあなたが少しでも推薦していることを理解していないからです。私はあなたの最初の質問を理解していません。私はあなたがAdobe Flashのネイティブだとは思わないと思います。頭字語のITASCAが意味するものでも、あなたの言うことも推奨されていないことはわかりません。あなたのgithubコードが達成するはずのものはわかりません。そのリンクの中にあるすべてのファイルは、読まれたファイルとライセンスファイルです。あなたはこの答えをよりわかりやすいものにするために、この答えを再検討することを検討するかもしれません。 – JeffryHouser

    +0

    あなたを下降させた人として。私は元のアスキーではないと指定したいと思います。残念ながら、あなたの修正された答えはあなたのオリジナルよりも良くないので、私はダウンボートを削除したくありません。 – JeffryHouser

    +1

    githubのリンクを更新してください。ファイルが表示されません。また、それを実行する方法の手順を教えていただけますか? –

    0

    私はこれを行うにはどのような方法を知りませんが、場合には、それは私がPOに望んでいた、助けFlashDevelopはAdobe Flash Proに接続して公開することができますが、FLAをFlash Proで開く必要があります。