您的位置:首页 > 其它

Adobe Alchemy Hello world

2011-11-04 22:27 232 查看

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写的示例代码



一些代码解释:

首先 AS3_Val 是Alchemy用来表示AS3中数据类型的 所有对Actionscript可见的方法,其返回值变量都需要被表示AS3_Val
main()函数中的第一行的作用是将用在Actionscript中的方法先声明为AS3_Function实例。
下一步(代码14行)是创建一个AS3_Object,它将承载所有声明为AS3_Function的方法。在这个例子里,就只有cMethod这一个方法。
通过调用AS3_Release来释放不需要的AS3方法。
最后,通知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中使用这个标准的库文件,大家应该已经知道了,如果感兴趣,可以看一下原文。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: