以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]内置验证登录测试失败,找不到原因  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=118608)

--  作者:倪远歌1
--  发布时间:2018/5/7 11:31:00
--  [求助]内置验证登录测试失败,找不到原因
内置验证登录测试失败,已经将测试的ip地址改为127.0.0.1了
并且按照casestudy的样式设计了窗口,新增了表格。设置了同一的用户表外部数据源
查了半天没有一点头绪错误在哪
求助各位大神帮忙看看

下面是代码
服务器端代码:

项目事件

 

AfterOpenProject

 

Forms("启动服务器").Open()

 

Server_UserLogging

 

If e.User Is Nothing Then

    Return

Else

    e.Success = True

End If

Dim dr As DataRow

dr = DataTables("好友").Find("用户 = \'" & e.User.Name & "\'")

If dr IsNot Nothing Then

    Dim nms As New List(of String)

    nms.AddRange(dr("好友").Split(","))

    For Each u As UserInfo In Users

        If u.Name <> e.User.Name Then

            If nms.Contains(u.Name) OrElse nms.Contains("[" & u.Group & "]")

                If u.Group > ""  Then

                    e.Buddies.Add(u.Group & "." & u.Name)

                Else

                    e.Buddies.Add(u.Name)

                End If

            End If

        End If

    Next

Else

    For Each u As UserInfo In Users

        If u.Name <> e.User.Name  Then

            If u.Group > ""  Then

                e.Buddies.Add(u.Group & "." & u.Name)

            Else

                e.Buddies.Add(u.Name)

            End If

        End If

    Next

End If

 

 

 

窗口与控件事件

 

启动服务器_Button1_Click

 

QQServer.Stop()

 

启动服务器_启动服务器_Click

 

QQServer.ServerIp = e.Form.Controls("txtIP").Value \'指定IP地址

QQServer.ServerPort = e.Form.Controls("txtPort").Value \'指定端口

QQServer.HeartbeatInterval = e.Form.Controls("txtInterval").Value \'指定心跳时间

QQServer.HeartbeatTimeout = e.Form.Controls("txtTimeOut").Value \'指定心跳超时时间

QQserver.Buildin = True \'一定要加上这个,表示使用内置身份验证

QQServer.Start() \'启动QQServer

 



客户端代码:


项目事件

 

AfterOpenProject

 

Forms("登录窗口").Open()

 

Client_ReceivedMessage

 

Dim dt As DataRow = DataTables("信息").AddNew

dt("发送者") = iif(e.UserName > "",e.UserName,"服务器")

dt("时间") = Date.Now()

dt("信息") = e.Message

 

窗口与控件事件

 

登录窗口_AfterLoad

 

e.Form.Controls("btnChat").Enabled = QQClient.Ready

 

登录窗口_btnChat_Click

 

If  QQClient.Ready Then

    QQClient.OpenChatWindow()

End If

 

登录窗口_Button1_Click

 

If QQClient.Ready Then

    MessageBox.show("QQClient已经启动,请先关闭","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)

    Return

End If

QQClient.ServerIP = e.Form.Controls("txtIP").Value  \'指定服务器IP地址

QQClient.ServerPort = e.Form.Controls("txtPort").Value  \'指定服务器端口

QQClient.UserName =""

QQClient.Password = ""

If QQClient.Start() = True \'如果登录成功

    e.Form.Controls("btnChat").Enabled = True

    Dim msg As String =  "恭喜,OpenQQ登录成功!"

    If QQClient.ServerMessage > "" Then \'如果服务器返回了欢迎信息

        msg = msg & QQClient.ServerMessage

    End If

    ConfigBar.Items("OpenQQ").SmallImage = GetImage("online.ico")

    popMessage(msg,"提示",PopiconEnum.Infomation,5)

Else \'如果登录失败,显示服务器返回错误信息

    e.Form.Controls("btnChat").Enabled = False

    PopMessage("QQClient登录失败,原因:" & vbcrlf & QQClient.ServerMessage,"提示",PopiconEnum.Error,5)

End If

 

登录窗口_Button2_Click

 

If QQClient.Ready = True Then

    QQClient.Stop()

    e.Form.Controls("btnChat").Enabled = False

End If

 




[此贴子已经被作者于2018/5/7 11:34:32编辑过]

--  作者:有点蓝
--  发布时间:2018/5/7 13:16:00
--  
服务端和客户端是在同一台电脑运行吗?

不要使用开发者和管理员做测试:http://www.foxtable.com/webhelp/scr/3049.htm

--  作者:倪远歌1
--  发布时间:2018/5/7 13:55:00
--  

好的,测试成功,好像跟下边这段代码有关?


ConfigBar.Items("OpenQQ").SmallImage = GetImage("online.ico")




--  作者:有点蓝
--  发布时间:2018/5/7 14:04:00
--  
看:http://www.foxtable.com/webhelp/scr/3012.htm