2012-08-28 42 views
5

Tôi đang tìm cách tự động hóa tác vụ tạo tệp .exe từ tệp .swf bằng cách sử dụng tùy chọn "Tạo Máy chiếu" trong trình phát flash. Tôi đang cố gắng để đạt được nó bằng cách sử dụng một tập tin kiến ​​xây dựng. Ai đó có thể chỉ cho tôi đúng hướng. Đã cố gắng tìm kiếm nhưng không tìm thấy các đối số dòng lệnh có sẵn với trình phát flash và cách tôi có thể chuyển đổi .swf thành .exe.Đối số dòng lệnh Flash Player để "Tạo Máy chiếu"

Lưu ý: Cần sử dụng trên Flash Player dưới dạng thời gian chạy, không có trình phát/giải pháp của bên thứ ba.

+0

Tôi không nghĩ rằng có tùy chọn dòng lệnh để tạo máy chiếu. Nó phải được thực hiện thông qua Flash Professional. Tôi sẽ khuyên bạn nên xem xét việc tạo ra một ứng dụng Adobe AIR mà làm cho việc sử dụng tính năng Captive Runtime để tạo ra một exe. Bạn có thể làm taht thông qua dòng lệnh hoặc xây dựng ANT. – JeffryHouser

+0

@ www.Flextras.com Bạn không cần Flash Professional để tạo tệp chiếu. Tùy chọn trình đơn của nó trong Flash Player, cho phép bạn tạo ứng dụng gốc. Tôi đang tìm kiếm đối số dòng lệnh cho trình phát flash, có thể lấy tệp .swf làm đối số dòng lệnh và xuất tệp .exe (trong trường hợp cửa sổ) hoặc tệp .app (trong trường hợp OSX). –

+0

Tôi không biết Adobe vẫn phân phối trình phát độc lập. Tuy nhiên; Tôi không tin rằng điều này có thể được thực hiện tại dòng lệnh. Tôi sẽ lặp lại đề xuất của mình để sử dụng Adobe AIR w/Captive Runtime. – JeffryHouser

Trả lời

-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: Sacks, S
  • @notes: AS2 và AS3 tuân thủ,
  • @notes: Dựa trên giàn giáo Khung
  • @github: https://github.com/stevensacks/Gaia-Framework/wiki/_history
  • @notation: Sử dụng JSFL: gốc: Thay đổi Xuất bản Cài đặt Cấu hình: v2: SACKS: MARCH 26, 2008 / /
  • @author: Eddie Martinez
  • @update: Tạo một .exe/máy chiếu
  • @using: .as3 || .swf FileLoader || .jsfl
  • @revision: Tháng 7 năm 2013
  • @info: Đây là một sự thay đổi nhẹ
  • @info: Thay đổi bắt nguồn từ JSFL giàn giáo Gaia [Gaia giàn giáo JSFL]
  • @framework: https://github.com/stevensacks/Gaia-Framework/wiki/_history

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; bởi vì tôi không hiểu những gì bạn đang giới thiệu một chút.Tôi không hiểu câu hỏi mở đầu của bạn. Tôi không chắc chắn bạn sẽ nói là bản địa của Adobe Flash. Tôi không chắc từ viết tắt của ITASCA có nghĩa là bạn cũng không được nói gì. Tôi không chắc chắn mã github của bạn là nghĩa vụ phải thực hiện; nhưng tất cả những gì tôi thấy trong liên kết đó là đọc tệp của tôi và tệp giấy phép. Bạn có thể xem xét làm lại câu trả lời này để làm cho nó mô tả hơn. – JeffryHouser

+0

Là người hạ nhục bạn; Tôi muốn chỉ định tôi không phải là askee gốc. Thật không may, tôi không hiểu câu trả lời sửa đổi của bạn tốt hơn so với bản gốc của bạn vì vậy tôi không sẵn sàng để loại bỏ downvote của tôi. – JeffryHouser

+1

Bạn có thể cập nhật liên kết github của mình được không, tôi không thấy bất kỳ tệp nào ở đó. Ngoài ra, bạn có thể đề cập đến các bước về cách chạy nó không? –

0

Tôi không biết cách nào để làm điều này nhưng trong trường hợp nó giúp, tôi muốn po trong đó FlashDevelop có thể nối vào Adobe Flash Pro để xuất bản, nhưng bạn phải mở FLA trong Flash Pro.

Các vấn đề liên quan