找回密码
 加入
搜索
查看: 3010|回复: 3

[网络通信] tcp连接慢 看看什么愿意求助

[复制链接]
发表于 2011-12-7 15:41:29 | 显示全部楼层 |阅读模式
;服务端 说明目的向所有同网段的机器发送一个服务器ip信息
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
If WinExists("电脑使用记录系统服务端") Then exit
$Form1 = GUICreate("电脑使用记录系统服务端", 623, 442, 192, 124)
GUISetState(@SW_SHOW)
Global $c_ip, $s_ip, $c_port=65431, $s_port=65432, $socket = -1, $szData,$m,$listen_socket
$c_ip=@IPAddress1
TCPStartup ( )
$szData = "s_IP|" & $c_ip&"|"& $c_port
For $m =0 to 254
        $s_ip = stringleft($c_ip, stringinstr($c_ip, '.', 0, 3)) & $m
        $listen_socket = TCPConnect($s_ip,65432)               
        If $listen_socket  =-1 then TCPCloseSocket($listen_socket)
        If $listen_socket  <> -1 Then TCPSend($listen_socket , StringToBinary($szData, 4))
Next
TCPCloseSocket($listen_socket )
TCPShutdown ( )
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_UseUpx=n
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
;客户端
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("电脑使用记录系统——客户端", 623, 442, 192, 124)
GUISetState(@SW_SHOW)
Global $c_ip = @IPAddress1, $s_ip, $c_port, $s_port, $Data, $listen_mark = 1,$listen_socket,$ConnectedSocket
TCPStartup()
$listen_socket = TCPListen($c_ip, 65432)
While 1
        $ConnectedSocket = TCPAccept($listen_socket)
        If $listen_mark = 1 and $ConnectedSocket >= 0  Then
                        TCPAccept($listen_socket)
                        $recv = TCPRecv($ConnectedSocket, 512)
                        $recv = BinaryToString($recv, 4)                       
                        $Data = StringSplit($recv, "|")                       
                        If $Data[1] = "s_IP" Then
                                $s_ip = String($Data[2])
                                $s_port=String($Data[3])
                                MsgBox(1,"",$Data[2]&"|"&$Data[3])
                                $listen_mark = 0                               
                        EndIf
                EndIf
                TCPCloseSocket($listen_socket)               
                $nMsg = GUIGetMsg()
                Switch $nMsg
        Case $GUI_EVENT_CLOSE
                TCPCloseSocket($listen_socket )
      TCPShutdown ( )
                        Exit
        EndSwitch
WEnd
发表于 2011-12-7 21:12:12 | 显示全部楼层
楼主建议你用TCP UDF by Kip V3吧,原生的真很难看
 楼主| 发表于 2011-12-8 18:58:27 | 显示全部楼层

RE: tcp连接慢 看看什么原因求助

回复 2# tsui


    TCP UDF by Kip
这个不太会用
发表于 2011-12-10 12:20:47 | 显示全部楼层
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 18:22 , Processed in 0.074372 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表