【B站弹幕游戏开发笔记02】Win10系统下给Python项目导入Protobuf
- 安装
Protobuf Github地址:https://github.com/protocolbuffers/protobuf/tree/master/python
先检查,本地的python版本:python -V
再检查,本地Protobuf版本:protoc --version
找到 *\protobuf-master\python,*代表你解压的位置
在cdm中切换到该位置,只有使用 python setup.py install 命令安装所需的依赖,如果安装了多个版本的pytho,
需要用你在目标项目中使用的python项目版本的python来执行这个命令。
- 写一个proto文件
syntax = "proto3";
package test;//这里使用文件名来做包名message MainPack
{ string playerName = 1;string playerPass = 2;string ip = 3;int32 id = 4;
}
- 生成
放protoc的路径\protoc-3.19.4-win64\bin\protoc.exe --python_out=目标输出路径 test.proto在cmd中切换到 .proto 文件所在目录执行这条命令,执行完成后会在目标目录下生成 test_pb2.py
- 使用
from protobuf import test_pb2 as DGP
mainpack = DGP.MainPack()
mainpack.playerName = "MOYV"
mainpack.playerPass = "test"
mainpack.ip = "192.168.1.1"
mainpack.id = 2
send_msg =mainpack.SerializeToString()
print(send_msg)# b'\n\x04MOYV\x12\x04test\x1a\x0b192.168.1.1 \x02'
附上在C#中的解析
/// <summary>
/// 接收到的消息长度
/// </summary>
/// <param name="length"></param>
public void ReadBuffer(int length)
{MainPack pack = (MainPack)MainPack.Descriptor.Parser.ParseFrom(buffer, 0, length);Debug.LogError(pack.Ip);
}
QQ交流群(我不是群主):391584244
【B站弹幕游戏开发笔记02】Win10系统下给Python项目导入Protobuf相关推荐
- 【B站弹幕游戏开发笔记01】Win10系统下给Unity项目导入Protobuf
Protobuf Github地址:https://github.com/protocolbuffers/protobuf 类库创建项目 使用vs2019 使用NuGet导入Google.Protob ...
- uc收藏导入html,win10系统下UC浏览器如何导入其他浏览器的收藏夹
UC浏览器的功能非常强大,比如它能够帮助我们找到电脑上安装的其他浏览器收藏夹.那么,如果想要在UC浏览器中导入其他浏览器收藏夹的话,具体该怎么操作呢?接下来,小编就以windows10系统为例,给大家 ...
- win10系统下多python版本部署
说明:win10,已安装有python3.5.2,为使用新浪云应用(SAE)支持微信公众号后台开发(SAE的python运行环境使用的是2.7.9),需部署python2.7的版本以便本地编辑调试. ...
- 利用Python获取国内某天从某地到某地的所有航班;附在win10系统下安装Python第三方包的方式
这段代码需要用到第三方包,有一些包部分版本有内置,win10安装第三方包的方式就是 1,打开设置->系统->关于->高级系统设置(在右侧的蓝字里)->环境变量->新建 2 ...
- win10系统下nodejs安装及环境配置
win10系统下nodejs安装及环境配置 一.下载对应的nodejs安装包 1.官网地址:https://nodejs.org/en/ (可以下载旧版本:打开 https://nodejs.org/ ...
- 【Visual C++】游戏开发笔记三十五 站在巨人的肩膀上:游戏引擎导论
看到在留言中很多朋友提到不太清楚DirectX与游戏引擎的区别的问题,在这里浅墨就专门把自己对游戏引擎的一些理解写成一篇文章,作为我们<Visual C++游戏开发>专栏的游戏引擎导论,也 ...
- 游戏开发笔记三十五 站在巨人的肩膀上:游戏引擎导论
本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhmxy555/article/details/8250057 作者:毛星云(浅墨 ...
- [置顶] 【Visual C++】游戏开发笔记之一——API函数、DirectX的关键系统...
本系列文章由zhmxy555(毛星云)编写,转载请注明出处. http://blog.csdn.net/zhmxy555/article/details/7318264 作者:毛星云 邮箱: h ...
- 【Visual C++】游戏开发笔记之一——API函数、DirectX的关键系统
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/7318264 作者:毛星云(浅墨) ...
- 从零开始游戏开发笔记(0):前期准备
从零开始游戏开发笔记(0):前期准备(持续更新中) 一.开发软件 1.1 游戏引擎 1.2 美工软件 1.3 音乐软件 1.4 插件 二.教程.素材 1.1 学习教程 1.2 素材网站 三.其他技能 ...
最新文章
- 兼容超大图片的处理_动态图适用性调研与兼容性方案
- 富文本编辑器 java_Java开发之富文本编辑器TinyMCE
- 洛谷 P1273 【有线电视网】
- three.js glb 多个_25万的预算,奔驰GLB、宝马X1、奥迪Q3该怎么选
- linux驱动大小,为什么在Linux字符驱动程序读取调用中大小总是= 4096?
- Elasticsearch的倒排索引是什么?
- 【转】Android 驱动开发系列四
- 安卓网络操作全解:发起请求,解析响应
- Leetcode796.Rotate String旋转字符串
- 《深入理解Java虚拟机》读书笔记二
- android color属性黑色,android – 未找到样式属性attr / colorSecondary
- 我们为什么要使用NodeJS
- 如何下载sonar?
- 心电信号越界怎么回事_心电信号基础
- Linux关闭桌面进程,Centos进入桌面和退出桌面的方法
- matlab 生成伽罗华域中元素代码
- 【Google】“共码未来“—2022谷歌开发者大会参会记录
- 服务器显示屏 超出工作频率范围,WIN7电脑显示器超出工作频率范围的处理方法...
- node.js 模块的安装卸载与导入机制
- 后AlphaFold时代的蛋白质结构预测
热门文章
- 编辑表格用什么软件比较好?最好用的都在这了!
- [CDOJ 5] Diligent Boys Don’t Love [动态规划]
- linux 模拟误码率,基于System View的比特误码率测试的仿真研究
- 怎样快速将方形图片剪裁成椭圆形?分享大家一个小妙招
- CSS峰会圆桌论道丨共享产业数字化升级中的安全探索
- STM32 控制蜂鸣器播放音乐的原理和实例
- 最全的熬粥方法Word计算机考试怎么做,各种粥的做法大全Word文档.doc
- 常见几种校验方法(CS和校验、CRC16、CRC32、BCC异或校验)
- TC397 MCMCAN
- vue引入阿里巴巴矢量图库图标