DELPHI PROTOBUF免费的开源支持库fundamentals5

1、源码URL:

https://github.com/fundamentalslib/fundamentals5

2、编译ProtoCodeGen.exe
下载完上面的文件后,在子目录中找到 ProtocolBuffers\CodeGenApp\ProtoCodeGen.dpr  ----- 编译它

3、编译完毕后,得到ProtoCodeGen.exe一个。它就可以把   *.proto  文件,生成为PAS文件了。

4、在D盘下,我新建了一个Google文件夹,把刚刚生成的protocodegen.exe放了进去

在这个文件夹下,我用记事本新建了一个文件,里面的内容如下

message Person {
    required string name = 1;
    required int32 id = 2;
}

保存为   message.proto

同样,我在Google文件夹下用建立一个叫做 pas_out文件夹

具体编译的指令时这样的。

打开 CMD。(DOS命令行那个,在开始——》运行——》CMD——》回车)

敲入命令

这个时候,去D:\google\pas_out下去找,会发现生成了一个pbMessageMessages.pas文件。

大功告成!!!!!

5、如何使用

新建一个项目

把Fundamentals.ProtoBuf.4.0.01(加压文件夹中的) ProtocolBuffers和Utils目录下的文件拷贝到我们新建的项目下,添加到项目里。

恩,其实并不是都能用的上的。这个自己看生成的pbMessageMessages.pas其他它就需要3个引用

cUtils,
  cStrings,
  cProtoBufUtils;

加密或者解密(序列化或者反序列化的代码如下)

var p1,p2:TPersonRecord;
  len:Integer;
  Bt:TBytes;
begin
  p1.Name := edtName.Text;
  p1.Id := StrToInt(edtID.Text);
  SetLength(Bt,100);
  //加密
  //len := pbEncodeValuePersonRecord(Bt[0],100,p1);
  len := pbEncodeValuePersonRecord(Bt[0],100,p1);
  SetLength(Bt,len);
  mmo1.Lines.Add(IntToStr(len));
  //解密
  //PersonRecordInit(p2);
  len :=pbDecodeValuePersonRecord(Bt[0],len,p2);
  mmo1.Lines.Add(IntToStr(len));
  mmo1.Lines.Add(p2.Name);
end;

彻底大功告成!!!!!

DELPHI PROTOBUF免费的开源支持库fundamentals5相关推荐

  1. 十大免费和开源计算机辅助翻译软件

    在商业全球化的时代,公司正在跨越地理界限,建立自己的本地业务,以瞄准更广泛的受众和市场.在这种情况下,语言障碍(两个人无法理解对方语言之间的沟通障碍)成为最大的挑战,这可能会阻止企业成长和实现目标. ...

  2. “易写易库(EXEK)”项目启动,用易语言开发易语言支持库

    "易写易库"(EXEK,E Xie E Ku)项目已经启动,用易语言开发易语言支持库.我(liigo)准备用一个月左右的业余时间,完成本项目的一期工程. 用易语言开发易语言支持库, ...

  3. 2019 年 10 大顶级 Python 支持库

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 安得广厦千万间,大庇天下寒士俱欢颜 ...

  4. Google开源机器学习示例库:浏览器上可运行,免费GPU后端支持

    安妮 编译整理 量子位 出品 | 公众号 QbitAI  青铜段位的机器学习研习者可能有着同样的困境:脑海中有个模糊的项目想法,但不知从何处动手,也不清楚用怎样的方法去实现. 从今天起,有个贴身小 ...

  5. php icon素材,Feather Icon - 简单漂亮的免费开源图标库

    介绍 Feather 是一套面向设计师和开发者的开源图标库,是一个简单漂亮的开源图标库. 每个图标都设计在一个24×24的网格上,强调简单,一致性和易读性.很多大厂出品的前端框架都内置了这款可以免费商 ...

  6. 2022年10大最受欢迎的顶级机器学习库(免费、开源)

    目录 机器学习库到底是什么? 那为什么 机器学习库最受欢迎? 2021 年10大的Python 机器学习库 机器学习库到底是什么? 在人工智能.机器学习开荒的年代,程序员需要手打公式.算法来执行ML认 ...

  7. GmBox – 支持批量下载谷歌音乐MP3的客户端 (免费开源支持Windows、Linux与Mac)

    谷歌音乐对于国人来说绝对是一个伟大的服务,它不仅所有MP3都是合法版权,而且还完全免费开放给大家下载.之前我们介绍过一款 谷歌音乐盒 的PC客户端,可以比网页版更方便地试听与下载正版音乐,可惜它只能在 ...

  8. css.gg - 一套漂亮的纯 CSS 实现的免费开源图标库

    700多个时尚漂亮的 css 图标库,特别适合 UI 设计师和前端开发者下载使用. 700+ CSS 图标 css.gg 是一套纯 css 实现的轻量美观的开源图标库,特点是所有的图形都通过 css ...

  9. 股票数据爬虫进阶:免费、开源的股票爬虫Python库,实测真香

    ​​ 数量技术宅团队在CSDN学院推出了量化投资系列课程 欢迎有兴趣系统学习量化投资的同学,点击下方链接报名: 量化投资速成营(入门课程) Python股票量化投资 Python期货量化投资 Pyth ...

最新文章

  1. Ubuntu 调试的时候,不能查看变量值
  2. 飞桨框架2.0正式版重磅发布,一次端到端的“基础设施”革新
  3. python find函数 和index的区别_python中index()与find()的区别
  4. 揭秘神仙高校的课堂!网友跪了:这就是差距啊!
  5. 第一百二十九期:阿里内部员工,排查Java问题常用的工具单
  6. 关于在软件中添加扫描二维码功能的详细步骤及对应的资源。
  7. python调用ping命令_在Python中调用Ping命令,批量IP的方法
  8. bzoj4600 [Sdoi2016]硬币游戏 sg函数+结论
  9. 2016年第七届(C/C++)B组蓝桥国赛题
  10. wps文档一敲空格就换行_wps敲空格变成点
  11. python海龟绘图代码大全-编程入门06:Python海龟绘图
  12. WPS文字表格自动填充序号
  13. Linux三剑客练习
  14. 【微信小程序】 map 组件 callout 自定义气泡 (实实在在的讲解)
  15. part-4 运放噪声快速计算
  16. Sentinel-1A卫星数据下载
  17. 【Python】 网格策略回测(日内高频数据)
  18. 第七周 项目四 队列数组
  19. linux read函数详解及应用
  20. There is no getter for property named 'distinct' in 'class cn.ly.item.pojo.SpciGroup'] with root cau

热门文章

  1. java isequal_Java LocalDate isEqual()用法及代码示例
  2. ajax编写前台的时候,列表显示部分,表格显示不出来,但是可以获取到数据
  3. oracle查看session阻塞,oracle查询blocking session阻塞情况
  4. c#启动mysql数据库服务器_c# - 使用C#应用程序连接Web服务器中的mysql数据库
  5. python动物代码大全_python爬虫代码大全
  6. 手机端html5 面试,今日头条 张祖俭 - H5动画在移动平台上的性能优化实践
  7. Sql为什么连接不上服务器上的数据库
  8. Spring Boot基础学习笔记10:配置国际化页面
  9. 大数据学习笔记40:Hive - 内置函数(3)
  10. 二级VB培训笔记08:公共基础知识