https://github.com/protocolbuffers/protobuf/releases
需要下载 对应电脑的proto编译软件
就这些
![](https://img.haomeiwen.com/i15146729/f6a495baec681859.png)
import os
class ProtoTool:
def __init__(self):
print("2")
def CreateScript(self,protocPath,protoLanguage,protoPath,createPath):
#切换目录就是cmd的cd
os.chdir(protocPath)
for i in createPath:
#字符串多行拼接
#cmd指令里的for循环 和 proto官方编译代码
#循环有个坑%%i报错 现在是%i
#因为当期路径是protocPath ..\上一级路径这个不好使
#protoc -I=$SRC_DIR --csharp_out=$DST_DIR $SRC_DIR/addressbook.proto
cmdScript=(
r"for %i in ("+protoPath+"*.proto) do ("#目录所有.proto文件
r"protoc --"+protoLanguage+"="+i+" "+protoPath+"%i"
r")"
)
#使用cmd
os.system(cmdScript)
#protoc的路径
protocPath=r"D:\UnityAss\ChatDemo\proto\bin"
protoLanguage="csharp_out"
#proto文件只能放在exe文件下
protoPath=r"protoScript/"
createPath={r"D:\UnityAss"}
ProtoTool().CreateScript(protocPath,protoLanguage,protoPath,createPath)
下载下来的proto
要生成的proto在这下边
![](https://img.haomeiwen.com/i15146729/4471144f01297c4a.png)
然后创建会在指定的creatPath(是个列表方便客户端服务器各拷贝一份)
网友评论