zoukankan      html  css  js  c++  java
  • Adobe Alchemy Hello world

     

    Adobe Alchemy Hello world

    原文地址:http://pradeek.blogspot.com/2009/06/getting-started-with-alchemy-hello.html

    首先,如果不知道Adobe Alchemy是什么的话,可以参考看一下RIAMeeting的往期周刊。 这里对Alchemy做一下简单的回顾。 Alchemy是Adobe的一个实验项目,其目的是可以让C,C++的源代码编译成能够运行在开源的Adobe Actionscript VM2虚拟机上的技术。这项技术的目的是为了让大家可以利用数量众多的C,C++现成代码。

    这里介绍的是Adobe Alchemy的入门知识。
    使用Adobe Alchemy主要是使用C,C++源码编译成SWC的Flash 库文件。 在FlashCS4或者Flex中使用这些库文件。
    首先,我们需要设置好Adobe Alchemy,你可以在Adobe Lab 上面找到Adobe Alchemy,安装并且设置好。
    InsideRIA也有一篇文章是关于Adobe Alchemy的,可以在这里找到

    设置完成后,这里给出一段C写的示例代码

    一些代码解释:

    1. 首先 AS3_Val 是Alchemy用来表示AS3中数据类型的 所有对Actionscript可见的方法,其返回值变量都需要被表示AS3_Val
    2. main()函数中的第一行的作用是将用在Actionscript中的方法先声明为AS3_Function实例。
    3. 下一步(代码14行)是创建一个AS3_Object,它将承载所有声明为AS3_Function的方法。在这个例子里,就只有cMethod这一个方法。
    4. 通过调用AS3_Release来释放不需要的AS3方法。
    5. 最后,通知AS3虚拟机库已经被AS3_LibInit初始化好了,将承载了所有的As3方法引用的对象result传递给Actionscript代码。注意,这一步应该在最后调用。

    代码编写好之后,我们就可以开始编译了。

    打开cygwin(编者注:cygwin是一个可以让你在windows上执行Linux下命令的工具,从某种角度说,可以认为是一种虚拟的Linux环境。其执行效率要比在Linux上执行速度要慢。)

    通过命令

    alc-on

    打开Alchemy,然后运行命令

    gcc helloWorld.c -O3 -Wall -swc -o helloworld.swc

    这样,就可以生成一个SWC库文件。

    到这里,大家看到,我们已经生成了一个可以供Flex或者FlashCS4调用的SWC库文件。

    具体如何在Flex Builder中或者FlashCS4中使用这个标准的库文件,大家应该已经知道了,如果感兴趣,可以看一下原文。

  • 相关阅读:
    linux下java调用.so文件的方法1: JNI
    在Eclipse中用SWT设计界面
    转:中文编码杂谈
    使用ObjectInputStream的readObject()方法如何判断读取到多个对象的结尾
    Java log4j详细教程
    java没有条件编译
    HTML参考手册
    javadoc 生成帮助文档时,注意以下几点
    Java中取小数点后两位(四种方法)
    iOS开发UI篇—使用UItableview完成一个简单的QQ好友列表(二)
  • 原文地址:https://www.cnblogs.com/xiayong123/p/3717431.html
Copyright © 2011-2022 走看看