脚本宝典收集整理的这篇文章主要介绍了将C++编译为Flash可用的swc,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。@H_512_0@
注意操作系统是Windows
这个编译器本来是adobe公司开发的,叫flascc,后来adobe将其开源,叫crossbridge
再后来adobe放弃了对它的维护,现在由社区进行维护,还叫crossbridge
我使用的是adobe手上的最后一个版本,crossbridge 1.0.1
github地址
下载地址,下载那个zip包就好了
社区维护的crossbridge的github地址,仅供参考
接下来的步骤我是参考adobe flascc的帮助文档
解压crossbridge的zip包,双击其中的run.bat,就能启动了
默认是在sample目录下的,你可以进入其中某个sample编译运行了
cd 01_HelloWorld
make FLASCC=/cygdrive/c/flascc/sdk FLEX=/cygdrive/c/flex_sdk
我们可以参考sample目录中的05_SWC
需要写一个wrapPEr,参考我写的
AS3/AS3.h中的api可参考这个
#include <cstdlib>
#include <string>
#include "AS3/AS3.h"
#include "AES.h"
void encrypt() __attribute__((used,
annotate("as3sig:public function encrypt(text:String):String"),
annotate("as3package:com.qunhe.instdeco.diy.flashutil.aes")));
void encrypt()
{
char *cstr = NULL;
AS3_MallocString(cstr, text);
int len = strlen(cstr);
std::string str(cstr, cstr+len);
free(cstr);
std::string enc = AES::encrypt(str);
AS3_DeclareVar(result, String);
AS3_CopyCStringToVar(result, enc.c_str(), enc.length());
AS3_ReturnAS3Var(result);
}
void decrypt() __attribute__((used,
annotate("as3sig:public function decrypt(text:String):String"),
annotate("as3package:com.qunhe.instdeco.diy.flashutil.aes")));
void decrypt()
{
char *cstr = NULL;
AS3_MallocString(cstr, text);
int len = strlen(cstr);
std::string str(cstr, cstr+len);
free(cstr);
std::string dec = AES::decrypt(str);
AS3_DeclareVar(result, String);
AS3_CopyCStringToVar(result, dec.c_str(), dec.length());
AS3_ReturnAS3Var(result);
}
以上是脚本宝典为你收集整理的将C++编译为Flash可用的swc全部内容,希望文章能够帮你解决将C++编译为Flash可用的swc所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。