Und vor allen Dingen Code in Form von Bildern zu senden, ist wirklich keine gute Idee. Wie soll man ihn überhaupt ausprobieren ... erst abtippen? Ich würde mir die Arbeit nicht antun, selbst wenn ich Ahnung vom Thema hätte.
TCP Socket, Daten als Byte Array senden und empfangen
Re: TCP Socket, Daten als Byte Array senden und empfangen
Alles Gute,
tionov
tionov
-
- Foriker
- Beiträge: 269
- Registriert: Fr 16. Jan 2015, 01:27
- Wohnort: Europäische Union - Italia
- Kontaktdaten:
Re: TCP Socket, Daten als Byte Array senden und empfangen
Ich danke, PJBlack, Ihnen für Ihre schönen Worte.
......wenn die Person einen Kopf hat.
Europaeus sum
Re: TCP Socket, Daten als Byte Array senden und empfangen
Oder einen anderen Weg suchen, welcher scheller zum Ziel führt!
Dann sollte man noch rechtzeitig erkennen, wenn man in einer Sackgasse ist!
Re: TCP Socket, Daten als Byte Array senden und empfangen
Grabman hat mir folgenden Code programmiert, welcher mich weiter bringt:
gambas code
gambas code
' Gambas class file Private Socket1 As Socket Private cmd As Byte[] = [&H0, &H0, &H0, &H3, &H3, &H0, &H0, &H6, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0, &H0] ' ' Nur für die Simulation: 'Private sServerIP As String = "192.168.123.176" 'Private iPort As String = 8000 Private sServerIP As String = "192.168.178.51" Private iPort As String = 12416 Public Sub Form_Open() Socket1 = New Socket As "Socket1" End Public Sub Socket1_Ready() Print "Connected to " & Socket1.RemoteHost Print "Local IP: "; Socket1.LocalHost End Public Sub Form_Close() Try Socket1.close End Public Sub Socket1_Read() Dim rx As String Read #Socket1, rx, Lof(Socket1) cmd = cmd.FromString(rx) For Each b As Byte In cmd 'Nur für das Monitoring Print Hex$(b); " "; Next Print Select Case cmd[7] Case &H7 '1. Antwort cmd[7] = &H8 SendCommand(cmd) Case &H9 '2. Antwort cmd[4] = &H4 cmd[7] = &H90 cmd[8] = &H2 SendCommand(cmd) Case &H91 '3. Antwort Socket1.Close TextBoxPH.text = Format((cmd[10] * 256 + cmd[11]) / 100, "0.00") TextBoxRedox.text = Format((cmd[12] * 256 + cmd[13]) - 2000, "0.00") End Select End Public Sub Button1_Click() SendCommand(cmd) End Public Sub SendCommand(Command As Byte[]) Dim StartTime As Date Try Socket1.Connect(sServerIP, iPort) StartTime = Timer Do Wait 0.01 Loop Until (Socket1.Status = Net.Connected) Or (Timer >= StartTime + 1) If Socket1.Status <> Net.Connected Then Message.Error("Connection could not be established within 1s.") Return End If Write #Socket1, command.tostring(0, command.count), command.Count End Public Sub Socket1_Closed() Print "Connection terminated by the counter station." End Public Sub Socket1_Error() 'These errors can occur at client sockets Select Socket1.Status Case Net.CannotCreateSocket Message.Error("Error: Cannot create socket.") Case Net.ConnectionRefused 'Message.Error("Error: Connection refused.") 'This error occures i.e. when the server is down Case Net.CannotRead Message.Error("Error: Cannot read.") Case Net.CannotWrite Message.Error("Error: Cannot write.") End Select EndDer Code funktioniert. Ich kann die gewünschten Werte über WLan anfordern und auswerten.
Re: TCP Socket, Daten als Byte Array senden und empfangen
So, jetzt können die nächsten blöden Kommentare kommen. Bin schon gespannt.
Re: TCP Socket, Daten als Byte Array senden und empfangen
Ich dachte eigentlich, hier geht es um Programmieren. Aber scheinbat geht es hier um was Anderes.
Die veröffentlichten Codes als Bilddatei waren, weil ich hier neu bin, und noch nicht gesehen hatte, das man auch Gambas Code einstellen kann. Ist mir aber jetzt bekannt.
Den VB Code, den man ja nicht mir gambas vergleichen kann, musste ich dann wohl als Bilddatei einstellen.
Die veröffentlichten Codes als Bilddatei waren, weil ich hier neu bin, und noch nicht gesehen hatte, das man auch Gambas Code einstellen kann. Ist mir aber jetzt bekannt.
Den VB Code, den man ja nicht mir gambas vergleichen kann, musste ich dann wohl als Bilddatei einstellen.
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste