hi ich habe hier eine paket sender aber mein probelm ist das er jedes mal nur ein paket senden kann ![]()
wäre es möglich das script so um zuschreiben das er mehrere pakete nach ner bestimmen sleeptime zu schicken ?
danke in vorraus
Spoiler anzeigen
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=..\..\..\Programme\AutoIt3\Aut2Exe\Icons\SETUP05.ICO
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <GUIConstants.au3>
#include <EditConstants.au3>
#include <WindowsConstants.au3>
#include <File.au3>
TCPStartup()
Global $Socket = -1
Global $Timer
Global $Recv
Global $Packet
Global $Data
Opt("GUIOnEventMode", 1)
$Form = GUICreate("Http- Packet Sender", 428, 650, -1, -1, BitOR($WS_SYSMENU, $WS_CAPTION, $WS_BORDER, $WS_CLIPSIBLINGS))
GUISetOnEvent($GUI_EVENT_CLOSE, "Close")
$Server = GUICtrlCreateInput("", 20, 30, 306, 22)
$Connect = GUICtrlCreateButton("Connect", 335, 30, 75, 22, 0)
GUICtrlSetOnEvent(-1, "ConnectClick")
$Send = GUICtrlCreateEdit("", 20, 95, 390, 219)
$CopyOne = GUICtrlCreateButton("Kopieren", 10, 330, 75, 22, 0)
GUICtrlSetOnEvent(-1, "CopyOneClick")
$SaveOne = GUICtrlCreateButton("Speichern...", 90, 330, 75, 22, 0)
GUICtrlSetOnEvent(-1, "SaveOneClick")
$PacketSend = GUICtrlCreateButton("Senden", 170, 330, 75, 22, 0)
GUICtrlSetOnEvent(-1, "PacketSend")
$CopyTwo = GUICtrlCreateButton("Kopieren", 10, 620, 75, 22, 0)
GUICtrlSetOnEvent(-1, "CopyTwoClick")
$SaveTwo = GUICtrlCreateButton("Speichern...", 90, 620, 75, 22, 0)
GUICtrlSetOnEvent(-1, "SaveTwoClick")
$Delete = GUICtrlCreateButton("Löschen", 170, 620, 75, 22, 0)
GUICtrlSetOnEvent(-1, "DeleteClick")
GUICtrlCreateGroup("Packet zum senden", 10, 70, 410, 255)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlCreateGroup("Empfangenes Packet", 10, 360, 410, 255)
$Receive = GUICtrlCreateEdit("", 20, 385, 390, 219, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_READONLY, $ES_WANTRETURN, $WS_HSCROLL, $WS_VSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlCreateGroup("Server- Ip oder Url", 10, 10, 410, 55)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
While 1
Sleep(100)
WEnd
Func ConnectClick()
If GUICtrlRead($Server) Then
If $Socket <> -1 Then
TCPCloseSocket($Socket)
GUICtrlSetState($Server, $GUI_ENABLE)
GUICtrlSetState($Connect, $GUI_ENABLE)
GUICtrlSetData($Connect, "Connect")
$Socket = -1
Else
GUICtrlSetState($Server, $GUI_DISABLE)
GUICtrlSetState($Connect, $GUI_DISABLE)
GUICtrlSetData($Connect, "Connecting...")
If StringInStr(GUICtrlRead($Server), "www.") Then
$Ip = TCPNameToIP(GUICtrlRead($Server))
Else
$Ip = GUICtrlRead($Server)
EndIf
$Timer = TimerInit()
While 1
$Socket = TCPConnect($Ip, 80)
If $Socket <> -1 Then
GUICtrlSetState($Connect, $GUI_ENABLE)
GUICtrlSetData($Connect, "Disconnect")
ExitLoop
EndIf
If TimerDiff($Timer) >= 4096 Then
MsgBox(0, "Fehlermeldung", "Es kann keine Verbindung zum Server hergestellt werden!")
GUICtrlSetState($Server, $GUI_ENABLE)
GUICtrlSetState($Connect, $GUI_ENABLE)
GUICtrlSetData($Connect, "Connect")
ExitLoop
EndIf
WEnd
EndIf
Else
MsgBox(0, "Hinweis!", "Sie müssen erst eine Server Adresse angeben, bevor sie connecten können!")
EndIf
EndFunc ;==>ConnectClick
Func CopyOneClick()
If GUICtrlRead($Send) <> "" Then
ClipPut(GUICtrlRead($Send))
Else
MsgBox(0, "Fehlermeldung!", "Sie haben kein Packet angegeben!")
EndIf
EndFunc ;==>CopyOneClick
Func CopyTwoClick()
If GUICtrlRead($Receive) <> "" Then
ClipPut(GUICtrlRead($Receive))
Else
MsgBox(0, "Fehlermeldung!", "Sie haben kein Packet bekommen!")
EndIf
EndFunc ;==>CopyTwoClick
Func PacketSend()
If $Socket <> -1 Then
If GUICtrlRead($Send) <> "" Then
GUICtrlSetState($PacketSend, $GUI_DISABLE)
GUICtrlSetData($PacketSend, "Sende...")
GUICtrlSetData($Receive, "")
$Packet = GUICtrlRead($Send)
TCPSend($Socket, $Packet)
$Timer = TimerInit()
While 1
$Recv = TCPRecv($Socket, 8192)
If $Recv <> "" Then
GUICtrlSetData($Receive, $Recv)
ExitLoop
EndIf
If TimerDiff($Timer) >= 4096 Then
MsgBox(0, "Fehlermeldung!", "Es konnte keine Antwort vom Server ermittelt werden! Überprüfen sie die Richtigkeit ihres Packets!")
ExitLoop
EndIf
WEnd
GUICtrlSetState($PacketSend, $GUI_ENABLE)
GUICtrlSetData($PacketSend, "Senden")
Else
MsgBox(0, "Fehlermeldung!", "Sie können kein Packet ohne Inhalt versenden!")
EndIf
Else
MsgBox(0, "Fehlermeldung!", "Sie haben keine Verbindung zum Server!")
EndIf
EndFunc ;==>PacketSend
Func DeleteClick()
GUICtrlSetData($Receive, "")
EndFunc ;==>DeleteClick
Func Close()
TCPCloseSocket($Socket)
TCPShutdown()
Exit
EndFunc ;==>Close
Func SaveOneClick()
If GUICtrlRead($Send) <> "" Then
$Data = GUICtrlRead($Send)
Local $Save = FileSaveDialog("Wählen sie ihren Speicherort!", @DesktopCommonDir, "(*.txt)")
_FileCreate($Save)
FileWrite($Save, $Data)
Else
MsgBox(0, "Fehlermeldung!", "Sie haben kein Packet angegeben!")
EndIf
EndFunc ;==>SaveOneClick
Func SaveTwoClick()
If GUICtrlRead($Receive) <> "" Then
$Data = GUICtrlRead($Send)
Local $Save = FileSaveDialog("Wählen sie ihren Speicherort!", @DesktopCommonDir, "(*.txt)")
_FileCreate($Save)
FileWrite($Save, $Data)
Else
MsgBox(0, "Fehlermeldung!", "Sie haben kein Packet bekommen!")
EndIf
EndFunc ;==>SaveTwoClick