zoukankan      html  css  js  c++  java
  • 让你的AIR程序脱离AIR环境运行

     

      我们都很喜欢AIR,因为她很美丽,但又不敢使用AIR,因为难以推广,实在让人为难。

      但是现在我们不再为难了,为什么?

      因为我们已经找到了让AIR程序脱离AIR环境的方法。

      首先,我们来分析一下AIR程序的运行机制,.air文件安装后会在安装目录生成一个.exe文件,此文件在启动时首先调用AIR运行时库Adobe AIR.dll。然后开始执行主程序.swf文件,那么我们就将这个Adobe AIR.dll文件提取出来使用。

      事实上我们无法直接来使用这个文件,AIR程序不像C++程序那样把所有依赖项放在同一个目录就OK了,我们需要AIR的调试器adl.exe文件来启动我们的AIR程序。

      好了,不多说了,让我们开始吧。

      首先,下载AIR sdk, 如果你电脑上安装了flex,也可以用Flex sdk3.0以上。如果你的Flash可以开发AIR程序,还可以到C:\Program Files\Adobe\Adobe Flash CS3\AIK目录获得此AIRSDK。下面以Flash CS3为例讲解如何从命令行执行AIR程序。

      打开Flash CS3,创建一个AIR程序保存在D:\AIRTest目录下,保存为AIRTest.fla,Ctrl+Enter运行程序,此时可以看到AIR窗口,关闭这个窗口。

      选择Windows的 开始->运行,输入cmd打开dos窗口,首先设置环境变量路径:

      set path=C:\Program Files\Adobe\Adobe Flash CS3\AIK\bin

      回车,此环境变量设置成功,然后输入:

      D:

      回车,进入D盘根目录,然后输入:

      cd D:\AIRTest

      回车进入我们的工作目录,然后输入:

      adl AIRTest-app.xml

      回车,此时我们就可以看到出现了AIR窗口,不管你的电脑上是否安装AIR运行环境,用这种方法都可以打开此AIR窗口。

      那么下面我们就提取adl.exe和Adobe AIR.dll来打包我们的程序。将C:\Program Files\Adobe\Adobe Flash CS3\AIK目录下的bin目录和runtimes目录拷出来,随便放在一个地方,然后将bin目录下除adl.exe外的文件全部删除,再将 runtimes目录下的除Adobe AIR.dll外的文件全部删除(这样做是为了减小打包文件的体积)。

      将D:\AIRTest目录下的 AIRTest-app.xml 和 AIRTest.swf 文件拷到bin目录下与adl.exe放在一起,然后在adl.exe的父级目录创建一个批处理文件叫app.bat,在app.bat文件中输入以下代码:

    @echo off
    ::转到当前盘符
    %~d0
    ::打开当前目录
    cd %~dp0
    echo 已将程序定位到当前目录,开始启动AIR程序
    ::执行AIR程序,并向InvokeEvent事件传参数
    bin\adl bin\AIRTest-app.xml -- %1


    此时双击这个bat文件就可以执行我们的程序了。

      为了让我们的程序更加完美的执行,我们还可以使用一个小软件叫 bat2exe,你可以百度一下,下载此软件,后面的就不用说了吧,可以使用幽灵模式来隐藏dos窗口,还可以为程序添加图标。

      然后将所有需要的文件打包一下,你会发现压缩包小于3M,这是不是很爽呢?

  • 相关阅读:
    生成指定范围的随机数
    sql
    map的使用
    基础03 JVM到底在哪里?
    Elasticsearch6.1.0 TransportClient聚合查询索引中所有数据
    Elasticsearch6.1.0 TransportClient滚动查询索引中所有数据写入文件中
    elasticsearch-java api中get() 和execute().actionGet()方法
    Elasticsearch6(Transport Client)常用操作
    Reflections反射获取注解下类
    Ambari2.6.0 安装HDP2.6.3: Python script has been killed due to timeout after waiting 300 secs
  • 原文地址:https://www.cnblogs.com/xiayong123/p/3717169.html
Copyright © 2011-2022 走看看