Code: Alles auswählen
;------------------------------------------------------------------------------------
Ip$ = "127.0.0.1"
Port = 502
GerAdr = 10
Funktionscode = 3
;Register = 1
;------------------------------------------------------------------------------------
*Buffer = AllocateMemory(1600)
If CreateNetworkServer(0, Port, #PB_Network_IPv4 | #PB_Network_TCP, Ip$)
Repeat
ServerEvent = NetworkServerEvent()
If ServerEvent
ClientID = EventClient()
If ServerEvent = #PB_NetworkEvent_Data
RequestLength = ReceiveNetworkData(ClientID, *Buffer, 1600)
If PeekB(*Buffer+4) = 0 And PeekB(*Buffer+5) = 6 And PeekB(*Buffer+6) = GerAdr And PeekB(*Buffer+7) = Funktionscode And PeekB(*Buffer+10) = 0 And PeekB(*Buffer+11) = 1 ; Register
If PeekB(*Buffer+8)*256+PeekB(*Buffer+9) = $0001
PokeB(*Buffer+ 4, 0)
PokeB(*Buffer+ 5, 5)
PokeB(*Buffer+ 6, GerAdr)
PokeB(*Buffer+ 7, Funktionscode)
PokeB(*Buffer+ 8, 2)
PokeB(*Buffer+ 9, Random(255,0))
PokeB(*Buffer+10, Random(255,0))
SendNetworkData(ClientID, *Buffer, 11)
EndIf
EndIf
Else
Delay(20)
EndIf
EndIf
Until a=3
EndIf
End
;------------------------------------------------------------------------------------