当前位置:编程学习 > C/C++ >>

protocolbuffer添加ActionScript3支持

 

protocolbuffer默认支持java, python 和c++,其他的语言需要自己编写代码生成器他语言的代码.

 

不过官网也提到过ActionScript3的支持,点击看这里

 

protobuf-actionscript3包括ActionScript3的序列号及反序列化的as源码.以及protoc的as3代码生成器的C++代码

 

另外, protobuf-actionscript3还需要一个加密库as3crypto支持,需要一并下载

 

当然, protobuf 库也是最重要的.

 

下面说明如何编译出支持as3的protoc代码生成器:

 

 

 

1. 将protobuf-actionscript3库中compiler\as3目录拷贝到protobuf库的src\google\protobuf\compiler下.目录结构如下:

 

as3\

    cpp\

    java\

    python\

    code_generator.cc

    command_line_inte易做图ce.cc

 

...

 

 

 

2.打开protobuf工程中的sln, 在libprotoc添加刚才添加的as3目录下的所有文件

 

3. 在protoc工程的main.cc中添加

 

  google::protobuf::compiler::as3::As3Generator as3_generator;

  cli.RegisterGenerator("--as3_out", &as3_generator,

      "Generate ActionScript source file.");

4. 打开as3_file.h

 

注释掉以下代码

 

namespace protobuf {

  class FileDescriptor;        // descriptor.h

  namespace io {

    class Printer;             // printer.h

  }

  namespace compiler {

    class OutputDirectory;     // code_generator.h

  }

}

包含内添加

 

#include <google/protobuf/stubs/common.h>

#include <google/protobuf/compiler/code_generator.h>

#include <google/protobuf/io/printer.h>

5. 编译出protoc.exe

6. 准备proto文件, 使用protoc.exe使用类似CPP生成的方式进行生成

7. 将protobuf-actionscript里的as3-lib及下载好的加密的swc整合到自己的flash工程即可开始使用

补充:软件开发 , C语言 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,