以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]重开 openQQ网络环境编号  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=124713)

--  作者:zcgmxf
--  发布时间:2018/9/12 12:50:00
--  [求助]重开 openQQ网络环境编号
老师,这个问题本人学艺不精,还没解决。
     如果服务端中途重新启动,新增行编号又会从1号开始,如何实现服务端任何时候启动都从最大编号开始编号?
按照帮助做的,不行。
    谢谢

--  作者:有点甜
--  发布时间:2018/9/12 14:42:00
--  

1、红色代码弹出什么?

 

Dim msgg As String = e.Message
msgbox(msgg)
If msgg.StartsWith(":p") AndAlso msgg.EndsWith("p:") Then
    msgg = msgg.SubString(2, msgg.Length - 4)
msgbox(msgg)

msgbox(flbhs.ContainsKey(msgg))
    If flbhs.ContainsKey(msgg) Then \'如果存在这个月的编号

        flbhs(msgg) = flbhs(msgg) + 1 \'将该月最大编号加1

    Else

        flbhs.Add(msgg,1) \'如果是这个月的首次编号,则编号等于1

    End If

    e.ReturnValue = flbhs(msgg) \'将编号返回给客户端


End If

 

2、项目启动的时候,9楼的代码,需要重新生成flbhs的值的,你弹出flbhs的值看一下是否正确。


--  作者:zcgmxf
--  发布时间:2018/9/12 22:14:00
--  
老师,
1、分别是“:p20180912p:”、“20180912”、  第一次是 false  删除后再次新增 就是 true
2、qz :20180912,id:8  是对的啊。
[此贴子已经被作者于2018/9/12 22:28:19编辑过]

--  作者:有点甜
--  发布时间:2018/9/12 22:18:00
--  

那最后msgbox(flbhs(msgg))的值是什么?

 

返回去接收到的值,是什么?

 

Dim rt As String =  QQClient.SendWait(":p" & bh & "p:")

msgbox(rt)


--  作者:zcgmxf
--  发布时间:2018/9/12 22:41:00
--  
老师,我看错了,第一次新增msgbox(flbhs.ContainsKey(msgg)) false  删除后再次新增 就是 true
 
服务端项目首次打开后新增
Dim rt As String =  QQClient.SendWait(":p" & bh & "p:")

msgbox(rt) 返回的是 1


老师,好像首次打开项目 flbhs.Add(qz, id) 不成功



[此贴子已经被作者于2018/9/12 22:50:00编辑过]

--  作者:有点甜
--  发布时间:2018/9/12 22:53:00
--  
以下是引用zcgmxf在2018/9/12 22:41:00的发言:
 
老师,好像首次打开项目 flbhs.Add(qz, id) 不成功


[此贴子已经被作者于2018/9/12 22:50:00编辑过]

 

打开项目的时候,在afterOpenProject事件写 flbhs.Add(qz, id) 的代码。同时加入msgbox弹出各个qz和id的值看一下。