以文本方式查看主题 - 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=91788) |
-- 作者:18523982317 -- 发布时间:2016/10/19 8:22:00 -- [求助] openqq问题 我按照帮助和自带的案例在本机上,设置openqqserver和客户端,没问题,能链接成功,但是在把服务端放服务器上就连不上。。。为什么啊? 我的步骤是1、服务端我是发布了的。 2、服务端放到服务器上启动起来,serverip设置的127.0.0.1,然后在防火墙把服务端.exe和端口52177都设置了入站规则允许。 3、客户端的链接ip是服务器的外网ip。。。。 4、我的服务器没通过路由,直接连的光钎固定ip地址。。所以不存在路由器穿透什么的。。。用foxtable编的程序能正常访问数据,没异常,所以不会是网路的问题。。。求解 想不明白那里错了???求指点。。 以下内容是专门发给有点蓝浏览 [此贴子已经被作者于2016/10/19 11:55:09编辑过]
|
-- 作者:qwz405 -- 发布时间:2016/10/19 8:59:00 -- 1.服务器电脑运行客户端,连接:127.0.0.1,看是否正常? 2.服务器serverip设置为:服务器的外网ip,然后客户端连接这个外网ip试下~
|
-- 作者:狐狸爸爸 -- 发布时间:2016/10/19 9:06:00 -- QQServer不要设置IP或者设置为“0.0.0.0”
http://www.foxtable.com/webhelp/scr/2971.htm
|
-- 作者:18523982317 -- 发布时间:2016/10/19 11:11:00 -- 以下是引用狐狸爸爸在2016/10/19 9:06:00的发言:
QQServer不要设置IP或者设置为“0.0.0.0”
http://www.foxtable.com/webhelp/scr/2971.htm
我在服务器上连接上了, 但是又出来这个问题,奇怪了。。。。问了大神,大神也不知道怎么回事?求解 users表是服务器本地的sql数据源里面的表,users表加载的全部, 用find 弹窗是1,用sqlfind,只要后面跟了条件就弹出来用户名错误,求解怎么回事。 |
-- 作者:有点蓝 -- 发布时间:2016/10/19 11:18:00 -- group字段在数据库是什么类型? 贴出所有和OpenQQ有关的代码包括客户端和服务端的。或者上传例子
|
-- 作者:18523982317 -- 发布时间:2016/10/19 11:25:00 -- 以下是引用有点蓝在2016/10/19 11:18:00的发言:
group字段在数据库是什么类型? 贴出所有和OpenQQ有关的代码包括客户端和服务端的。或者上传例子 项目事件
AfterOpenProject
Forms("QQServer").open
Server_UserLogging
Dim pts() As
String = e.UserName.Split(".") msgbox(pts(0)) msgbox(pts(1)) Dim dr1 As DataRow dr1 =
DataTables("users").sqlFind("Group = \'" & pts(0) &
"\' And Name = \'" & pts(1) & "\'") If dr1 Is
Nothing Then \'判断此用户不存在 e.Message
= "用户名错误!" \'返回给登录者的提示信息 Return Else If dr1("shifolizhi") = 1 Then e.Message = "该用户已离职!" \'返回给登录者的提示信息 Return End If End If If
dr1("Password") <> e.Password Then \'如果密码错误 e.Message
= "登录密码错误!" \'返回给登录者的提示信息 Return End If e.Success = True \'允许用户登录 \'添加所有同事为好友 For Each dr2 As
DataRow In DataTables("users").DataRows Dim nm As String = dr2("Group") & "."
& dr2("Name") If nm <> e.UserName Then \'如果不是登录者本人 e.Buddies.Add(nm) End If Next
Server_ReceivedMessage
If e.Message =
"GetDate" Then e.ReturnValue = Date.Now End If
Server_UserChangePassword
Dim pts() As
String = e.UserName.Split(".") Dim dr As DataRow
= DataTables("用户").Find("部门 = \'" & pts(0) & "\'
And 姓名 = \'" & pts(1) & "\'") If dr Is
Nothing OrElse dr("密码")
<> e.OldPassword Then e.ReturnMessage = "原密码不符!" Else dr("密码") = e.NewPassword dr.Save() e.ReturnMessage = "OK" \'返回约定的字符,通知客户端,密码修改成功 End If
窗口与控件事件
QQServer_Button1_Click
QQServer.ServerIp
= e.Form.Controls("IP").Value \'指定IP地址 QQServer.ServerPort
= e.Form.Controls("dk").Value \'指定端口 QQServer.HeartbeatInterval
= e.Form.Controls("jg").Value \'指定心跳时间 QQServer.HeartbeatTimeout
= e.Form.Controls("cs").Value \'指定心跳超时时间 QQServer.Start() \'启动QQServer
QQServer_Button2_Click
QQServer.ServerIp
= e.Form.Controls("IP").Value \'指定IP地址 QQServer.ServerPort
= e.Form.Controls("dk").Value \'指定端口 QQServer.HeartbeatInterval
= e.Form.Controls("jg").Value \'指定心跳时间 QQServer.HeartbeatTimeout
= e.Form.Controls("cs").Value \'指定心跳超时时间 QQServer.Start() \'启动QQServer
窗口1_Button1_Click
QQClient.ServerIP
= "127.0.0.1" \'指定服务器IP地址
QQClient.ServerPort
= 52177 \'指定服务器端口
QQClient.UserName
= "综合部.刘京"
QQClient.Password
= "5201314"
If
QQClient.Start() = True \'如果登录成功
Dim msg As String = "恭喜,OpenQQ登录成功!"
If QQClient.ServerMessage > ""
Then \'如果服务器返回了欢迎信息
msg = msg & QQClient.ServerMessage
End If
PopMessage(msg,"提示",PopiconEnum.Infomation,5)
Else \'如果登录失败,显示服务器返回错误信息
PopMessage("QQClient登录失败,原因:"
& vbcrlf & QQClient.ServerMessage,"提示",PopiconEnum.Error,5)
End If |
-- 作者:18523982317 -- 发布时间:2016/10/19 11:30:00 -- 上面是服务端的代码。。。。。 我在服务器本地能连上,但是提示用户错误。。。。用find就没问题。。。奇怪得很。。。上面那张截图也是在服务器上操作的。。。 我把编辑好的服务端发布了,然后启动了ip为0.0.0.0的QQserver,然后在源代码里建了个窗口直接登录,没问题,能连上,但是提示用户名错误。 在外部客户端我直接用的foxtable自带的案例,把ip改成了服务器的ip,用户名什么的都改正确的了,但是提示连不上。。。奇怪得很
|
-- 作者:18523982317 -- 发布时间:2016/10/19 11:53:00 -- 以下是引用有点蓝在2016/10/19 11:18:00的发言:
group字段在数据库是什么类型? 贴出所有和OpenQQ有关的代码包括客户端和服务端的。或者上传例子 帮忙进服务器看下,帖子上都发给你了。。。。
|
-- 作者:18523982317 -- 发布时间:2016/10/19 13:26:00 -- 帮忙看下啊 |
-- 作者:18523982317 -- 发布时间:2016/10/19 14:00:00 -- 以下是引用18523982317在2016/10/19 11:11:00的发言: 折腾了一个中午,外部客户端总算连上了,原来防火墙里要把端口、程序、包括生成的程序全部开放出去。。。总算连上了,但是截图的错误始终没找到问题所在?users表明明是sql数据源表,表达式也没错,就是死活提示用户名错误,但是实际上用户存在。。。。sqlfind始终找不到对应的行。。。。
[此贴子已经被作者于2016/10/19 14:00:14编辑过]
|