以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  openQQ使用中的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=80910)

--  作者:a937775799
--  发布时间:2016/2/8 19:43:00
--  openQQ使用中的问题
服务端ReceivedMessage事件中代码
 MessageBox.Show( Trim(e.UserName)        )
QQServer.Send(  Trim(e.UserName) , Trim(e.UserName)      )
执行结果是对的服务器弹出用户名,

客户端代码ReceivedMessage事件中代码
Dim l  As WinForm.ListBox
l  = Forms("主界面").Controls("userList")
l.ComboList = e.Message
MessageBox.Show(e.Message)
为何不执行
我以为是没在登陆中设置 我在服务器的Userloging中
e.Success = True
Dim user  = e.UserName
Dim r As DataRow = DataTables("在线用户").AddNew
r("用户名称")=user
e.Message = "5454"
e.Buddies.Add( trim(e.UserName) )
可是用户端还是不弹出 message啊

--  作者:Hyphen
--  发布时间:2016/2/12 14:24:00
--  
测试没有问题,不用更改 Userloging

确认是否能够正常登录。

ReceivedMessage事件需要通过QQServer.Send发送才会触发


--  作者:a937775799
--  发布时间:2016/2/16 10:24:00
--  
 我服务端是QQServer.Send(  Trim(e.UserName) , Trim(e.UserName)      )发送消息执行的呀
而且登陆是正常,要不
服务端怎么会
 MessageBox.Show( Trim(e.UserName)     ),弹出用户名,
现在是 客户端ReceivedMessage中好像根本收不到消息呢,根本不执行MessageBox.Show(e.Message)这个,
现在还没用到客户端给服务器发消息,服务器给客户端发消息都收不到呢
--  作者:大红袍
--  发布时间:2016/2/16 10:28:00
--  

 这个是不可能的事情,肯定可以发送啊。不然你做个例子上来测试。

 

 


--  作者:a937775799
--  发布时间:2016/2/16 10:39:00
--  
 找到问题了  我得到key 里面的用户名  里面有空格 ,登陆的时候没 过滤两端的空格

--  作者:a937775799
--  发布时间:2016/2/16 10:39:00
--  
谢谢
--  作者:a937775799
--  发布时间:2016/2/16 15:35:00
--  
QQClient.stop方法在那事件里面用,我打开一次后关不了,没办法只能在start前面stop 一下才正常

--  作者:大红袍
--  发布时间:2016/2/16 15:36:00
--  
肯定不能在事件里面stop的。
--  作者:a937775799
--  发布时间:2016/2/16 15:41:00
--  
 但是我打开的是内置聊天窗口那个窗口 ,关闭了 也没事件啊,我要在那写

--  作者:大红袍
--  发布时间:2016/2/16 15:43:00
--  

 弄一个计时器,判断聊天窗口是否打开,如果关闭了,就执行代码呗。

 

 但没必要重复start和stop啊。