Leider ist es da nicht so einfach wie erwartet und ich hänge nun an einem Punkt wo ich selbst keinen Rat mehr weiß.
In PHP versende ich meine Packets folgendermaßen;
PHP Code:
$socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP);
$result = socket_connect ($socket, $IP, $Port);
$query = "\x40SHOWMETHEMONEY\x0A\x40EVENT xmas_boom 0\x0A";
$write_res = socket_write($socket, $query, $query_size);
$recv_res = socket_recv($socket, $output, 5056, 0);
Nun, meinen AutoIT abschnitt;
Code:
TCPStartup() $socket = TCPConnect($ip, $port) If $socket = -1 Then MsgBox(16, "Error", "Die Verbindung zum Server konnte nicht hergestellt werden!") EndIf $sendedBytes = TCPSend($socket, "\x40SHOWMETHEMONEY\x0A\x40EVENT xmas_boom 0\x0A") If $sendedBytes = 0 Then MsgBox(16, "Error", "Das Paket konnte nicht gesendet werden.") EndIf TCPCloseSocket($socket) TCPShutdown()
Leider passiert Ingame trotz TCPSend nichts.
Den Query Text, der ausgeführt wird habe ich schon 1000000 mal verändert weil ich dachte es liegt evtl. daran und ich denke immernoch, das es an den ASCII Zeichen liegt, die dort mit Übergeben werden (\x40, \x0A).
Nun wäre meine Frage, liegt es wirklich daran oder habe ich irgendwo einen anderen Fehler gemacht, den ich nicht sehe?
Bzw wie kann ich die ASCII Zeichen sonst übergeben?
\x40 könnte man evtl auch als @ ausschreiben (sicher bin ich mir da aber auch nicht), aber bei \x0A wirds dann schon kritisch, da das kein Zeichen an sich ist..
In PHP habe ich ausserdem die möglichkeit die Antwort, die ich auf das Paket bekomme auszugeben. Geht das in AutoIT auch?
Ich freue mich über jede konstruktive Antwort.
Gz,
Ap0






