读书人

高手帮忙看下这个远控代码解决方法

发布时间: 2012-02-25 10:01:49 作者: rapoo

高手帮忙看下这个远控代码
服务端:
Private Sub Form_Load()
myClient.RemoteHost = "127.0.0.1"
myClient.RemotePort = 5211
On Error Resume Next
myClient.Connect
Timer1.Enabled = True
Text1.Text = myClient.RemoteHostIP
End Sub



Private Sub myClient_Connect()
Debug.Print "success!"
End Sub

Private Sub myClient_DataArrival(ByVal bytesTotal As Long)
Dim strdata As String
Dim sdata As String
myClient.GetData strdata
sdata = Left$(strdata, 7)
Select Case sdata
'系统消息
Case "SENDINO"
sendxx = Right$(strdata, Len(strdata) - 7)
sendform.sendtxt.Text = sendxx
On Error Resume Next
sendform.Show 1
'发送消息
Case "SENDINF"
sendxx = Right$(strdata, Len(strdata) - 7)
infoform.Text1.Text = sendxx
On Error Resume Next
infoform.Show 1

'关闭服务端
Case "OUITMYF"

Case "GETFXIF"

End Select


End Sub

Private Sub Timer1_Timer()
Dim strz As String
Select Case myClient.State
Case 0
strz = "关闭"
Case 1
strz = "打开"
Case 2
strz = "监听"
Case 3
strz = "挂起"
Case 6
strz = "正在连接"

Case 7
strz = "已连接"
Text1.Text = myClient.RemoteHostIP



End Select
If Text2.Text = "" Then
Text2.Text = "没有连接成功"
Else
Text2.Text = strz
End If
End Sub

客户端:

Private Sub Form_Load()
myserver.RemoteHost = "127.0.0.1"
myserver.LocalPort = 5211
myserver.Bind
myserver.Listen
End Sub

Private Sub myServer_ConnectionRequest(ByVal requestID As Long)
If myserver.State <> sckClosed Then
myserver.Close
End If
myserver.Accept requestID
End Sub

Private Sub myServer_Close()
myserver.Close
myserver.Listen
End Sub

我用了这段代码发现这个要先运行客户端,然后运行服务端两个才可以连接,如果先运行服务端在运行客户端就连接不了,
我新手,我想要一个这样的功能
就是
服务端功能:
有以个List1文本是用来显示客户端的,列表形式显示,
如:
1.客户端IP192.168*.*
2.客户端IP192.168*.*
还有一个关键的就是不管先运行客户端还是服务端都能连接,都能显示在LIST1文本里面,而且当客户端下线了就不在LIST1显示,
客户端:
一个TEXT1用来输入IP地址,和运行客户端就把IP显示在这里
一个连接服务端按钮
这个我是用在内网的,用内网IP就行了,还有就是运行客户端就可以直接跟服务端连接,不需要自己来手工输入IP,并把IP保存到一个DAT,文件里面,每次运行就先检查一下里面的IP,用里面的IP连接就好了

要上交啊,希望高手能帮我写个代码出来啊

[解决办法]
由于连接是在窗体的load过程里面,导致运行先后顺序有要求。你可以把load过程的代码手动来调用

其他功能,自己多动手吧

[解决办法]
我发现你把服务端和客户端的概念搞反了.

所以你只要把"服务端"改成"客户端", 同时把原来的"客户端"改成"服务端"即不存在心里障碍了.
[解决办法]
忽然想起来了, 有一种远程连接的程序是和正常的相反的, 就是从服务段主动发出连接到客户端受控的. 因为这样可以避开部分防火墙和安全软件的限制.
不过那个叫灰鸽子.
楼主是想做此类东西么?
真要内网管理的话, 我优先推荐你用remote admin, 差点的就是pcanywhere, VNC, 哪怕QQ也行, web版的还有bomga
[解决办法]
你的服务器做的是客户端的事情,而你的客户端做的是服务器的事情。
侦听连接这是服务器的工作,而主动连接远程服务器是客户端的工作,你正好搞反了

读书人网 >VB

热点推荐