Skip to content
Boil edited this page Mar 24, 2019 · 3 revisions

项目配置和具体实现操作

当前 2.1.1版本是在vs2017上写的,运行环境是windows

ProtocolGenerator

这是一个自定义生成工具,挂到.code文件上。 运行参数 类似如下

--operate_type=id --input_path=$(ProjectDir) --output_path=$(SolutionDir)Cache\ --filename=%(FullPath)

其中,

--operate_type 命令类型有:目前实现的有 id,all,CSharpId,CSharp,JavaId,Java

  • id 生成所有支持语言的id文件
  • all 生成所有支持语言的协议文件
  • 其他以此类推

--input_path ,--output_path顾名思义不做解释。

--filename ,为.code文件的完整路径

ProtocolBuilder

这是一个win32的命令行程序。里面添加了.code文件。 其中包含如下:

  1. IdGenerator/Id.code 这个文件不建议更改或删除。其功能是生成消息id对应操作的相关代码。自定义生成工具命令行参数如下 $(SolutionDir)Output\net35\ProtocolGenerator --operate_type=id --input_path=$(ProjectDir) --output_path=$(SolutionDir)Cache\ --filename=%(FullPath)
  2. Server/ServerRegister.code 这是具体协议文件。可以根据需要添加,更改命名。自定义生成工具命令行参数如下 $(SolutionDir)Output\net35\ProtocolGenerator --operate_type=all --input_path=$(ProjectDir) --output_path=$(SolutionDir)Cache\ --filename=%(FullPath)

ProtocolLib

这是一个c#的库,是个协议库的例子

Google.Protobuf

这个版本用的源码是https://github.com/protocolbuffers/protobuf/releases/download/v3.6.0/protobuf-csharp-3.6.0.zip

不同于以上这个google源码的是,我这里的工程是基于.net3.5的。

Clone this wiki locally