交付物:D:/AI空间/rxjh/旧版本更新_修复后_v20.e(2,895,638 字节,t2e 0 错 0 警)
你在 IDE 里放好的两个按钮:上传角色日志(357,553)、下载角色日志(357,600)。<br>界面部分我整套采用你的 form.json(含你顺手挪过的「上传角色配置按钮」等位置),一个像素都没改;<br>只在代码里补了 4 个子程序,按钮点下去就有反应了:
| 子程序 | 作用 |
|---|---|
_上传角色日志_被单击 | 入口:查重入 → 写日志 → 起线程 |
_下载角色日志_被单击 | 入口:查重入 → 写日志 → 起线程 |
上传角色日志到服务器 | 分片上传当前角色的运行日志 |
下载角色日志到本地 | 从服务器取日志,覆盖本地(先留底) |
为什么分片:日志单份就有 2.5MB 左右,而服务器单次请求上限 200KB(IIS 默认),一次传不完。
config\log\<当前角色名>.txt,按 190000 字节/片切开逐片上传part=1(服务端先把服务器上的旧日志留底,再覆盖)part=0(服务端 追加到文件末尾)日志里的关键几行:
【日志同步】开始上传当前角色【江南雨替我说别】的运行日志到服务器…
【日志同步】已上传 5 片,累计 950000 / 2526384 字节…
【日志同步】上传完成:角色【江南雨替我说别】日志 2526384 字节,共 14 片,服务器校验一致
角色日志\<角色名>\<角色名>.txtconfig\log\<角色名>.txtconfig\log\_同步备份\<时间戳>\<角色名>.txtyxzh_script.asp 扩展(原来只有 kind=script / kind=role):
kind=log → 目录 C:\inetpub\wwwroot\角色日志\<角色名>name 在 kind=log 下**只放行 *.txt**(其它 kind 仍只收 *.ini)op=put 新增 &part=1|0:1 覆盖写(覆盖前留底到 角色日志\_bak\)、0 追加写ERR lost first part,不会拿半截文件冒充完整服务端 14 项真实 HTTP 往返:
kind=role 列目录 / 上传 / 下载 → 正常kind=log 分片上传 500000 字节(3 片) → op=list 字节数一致 → op=get 取回 MD5 与源文件一致part=0 无第一片被拒;get 不存在的日志返回空体../ 被拒;kind=log 传 .ini 被拒;kind 省略传 .txt 被拒;错误令牌被拒客户端:门禁三件套(控制块 0 问题 / 声明体检通过)+ t2e 直编 0 错 0 警 + e2t 回转逐项确认<br>(4 个新子程序在位、分片逻辑正确、无「或/且」条件链、界面 384 个控件含两个新按钮)。
旧版本更新_修复后_v20.e → F7 编译 → 覆盖各机器的 test.dll(别点「旧版覆盖」)config\log\ 就有那份日志了(旧日志自动留底)e2txt 在做 t2e 转换时会把文本工程的 项目.etprj 从 425 字节重写成 146 字节的残缺版(且丢 BOM)。<br>本次已恢复完整配置;这个文件名下的编译参数(Encoding / Level / NameStyle)不受影响,但残缺版会让 e2txt GUI 少读配置,所以每次编译后都该恢复一次。