AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TCP persistent

Ein Thema von jeng37 · begonnen am 30. Jul 2015 · letzter Beitrag vom 4. Nov 2015
Antwort Antwort
Seite 3 von 5     123 45      
jeng37

Registriert seit: 23. Jul 2015
42 Beiträge
 
#21

AW: TCP persistent

  Alt 19. Aug 2015, 03:35
Hallo,

Ich habs am laufen!
Nur wieso funktionniert es mit der socket compo. und nicht mit der Indy?

Hier die socket version mit der es funktionniert!
Delphi-Quellcode:
procedure TfrmMain.Button2Click(Sender: TObject);
  var
    Data: AnsiString;
begin
  Data := #$04#$01#$02#$23#$3c#$00#$0a#$01#$ff#$00#$00#$00#$00#$00#$00#$00#$fe; // Nachricht zusammenbauen, z.B. schalten
  Memo1.Lines.Add('Send2: '+Str2Hex(Data));
  ClientSocket1.Socket.SendText(Data);
end;
Hier dann die Indy version mit IdTcpClient. (funktionniert leider nicht)
Delphi-Quellcode:
procedure TfrmMain.Button2Click(Sender: TObject);
Var
  port1on: string;
begin
  port1on := #$04#$01#$02#$23#$3c#$00#$0a#$01#$ff#$00#$00#$00#$00#$00#$00#$00#$fe;
  IdTCPClient1.IOHandler.Write(port1on);
end;
  Mit Zitat antworten Zitat
jeng37

Registriert seit: 23. Jul 2015
42 Beiträge
 
#22

AW: TCP persistent

  Alt 20. Aug 2015, 12:31
Dieses funktionniert leider auch nicht!
Was mache ich Falsch?

Delphi-Quellcode:
Procedure TFClient.BSendClick(Sender: TObject);
Var
    buf: TidBytes;
  

begin
  SetLength(Buf, 17);
  FillBytes(Buf, 17, 0);
  Buf[0] := $04;
  Buf[1] := $01;
  Buf[2] := $02;
  Buf[3] := $23;
  Buf[4] := $3c; // para1; //Exo1
  Buf[5] := $00;
  Buf[6] := $0a;
  Buf[7] := $01;
  Buf[8] := $ff;//port1;
  Buf[9] := $00;//port2;
  Buf[10] := $00;//port3;
  Buf[11] := $00;//port4;
  Buf[12] := $00;//port5;
  Buf[13] := $00;//port6;
  Buf[14] := $00;//port7;
  Buf[15] := $00;//port8;
  Buf[16] := $fe;//para3;
 
  //IdTCPClient1.IOHandler.Write(Buf); <---- geht nicht
  IdTCPClient1.Socket.Write(buf); <---- geht auch nicht
obwohl im buf die richtige bytefolge gesendet wird.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#23

AW: TCP persistent

  Alt 20. Aug 2015, 13:27
.. und wie schaut es mit

idTCPClient1.IOHandler.Write(buf,17); aus?

Grüße
Klaus
Klaus

Geändert von Klaus01 (20. Aug 2015 um 13:43 Uhr)
  Mit Zitat antworten Zitat
jeng37

Registriert seit: 23. Jul 2015
42 Beiträge
 
#24

AW: TCP persistent

  Alt 20. Aug 2015, 18:01
.. und wie schaut es mit

idTCPClient1.IOHandler.Write(buf,17); aus?
Nein leider hilft das auch nicht.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#25

AW: TCP persistent

  Alt 20. Aug 2015, 19:57
.. bekommst Du eine Fehlermeldung - in Deinem Programm oder in der entfernten Anwendung?

Der Client hat sivh auch mit dem Server verbunden bevor Du die Nachricht abschickst - oder?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
jeng37

Registriert seit: 23. Jul 2015
42 Beiträge
 
#26

AW: TCP persistent

  Alt 20. Aug 2015, 20:04
.. bekommst Du eine Fehlermeldung - in Deinem Programm oder in der entfernten Anwendung?
Nein gar keine Fehlermeldung. Wenn ich einnen Break Point stetze steht auch die richtige bytefolge in Buf.
Sie kommt auch an, ich sehe das am flackern der led's.

Zitat:
Der Client hat sivh auch mit dem Server verbunden bevor Du die Nachricht abschickst - oder?
Ja die verbindung steht auch, ich sende zuerst einnen connect, danach einen login, und bekomme die variable v056 zurück. Damit weiss ich dass connect und login ok waren.

Es ist echt zum verzweifeln, weil es ja mit der socks komponente funst.
Ich brauche aber die Indy kompo wegen Android.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#27

AW: TCP persistent

  Alt 20. Aug 2015, 20:11
Hast Du eine Möglichkeit die übertragenen Daten zu tracen (mit Wireshark z.B.).
Einmal mit socks und einmal mit indy versandt.

Vielleicht zeigen sich ja Unterschiede.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
jeng37

Registriert seit: 23. Jul 2015
42 Beiträge
 
#28

AW: TCP persistent

  Alt 20. Aug 2015, 20:15
Hast Du eine Möglichkeit die übertragenen Daten zu tracen (mit Wireshark z.B.).
Einmal mit socks und einmal mit indy versandt.

Vielleicht zeigen sich ja Unterschiede.
Ja gute idee, das hab ich noch nicht versucht!
Danke,
Ich mach mich mal gleich ans werk.
  Mit Zitat antworten Zitat
jeng37

Registriert seit: 23. Jul 2015
42 Beiträge
 
#29

AW: TCP persistent

  Alt 20. Aug 2015, 20:29
Hier das resultat.

Indy Dump:
bytefolge die ich sende: 04 01 02 23 3c 00 0a 01 ff 00 00 00 00 00 00 00 fe
Und das modul schaltet nicht!!

Socks Dump:
bytfolge die ich sende: 04 01 02 23 3c 00 0a 01 ff 00 00 00 00 00 00 00 fe
Da wird aber irgendwie noch zwei bytes angehängt!
Und zwar 0d 0a. CR/LF
Ergibt also : 04 01 02 23 3c 00 0a 01 ff 00 00 00 00 00 00 00 fe 0d 0a
Und das modul schaltet!!

Soll/kann das mein problem sein?
Hab die zwei dumps mal angehängt.

Edit: Hab auch die zwei bytes in buf beigefügt und länge angepasst, schaltet trotzdem nicht.
Angehängte Dateien
Dateityp: txt Indy Dump.txt (11,9 KB, 5x aufgerufen)
Dateityp: txt socks dump.txt (1,6 KB, 3x aufgerufen)

Geändert von jeng37 (20. Aug 2015 um 20:39 Uhr)
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#30

AW: TCP persistent

  Alt 20. Aug 2015, 21:26
Bei dem Versand mit sock verwendest Du SendText, das wird wohl cr/LF anfügen.
Bei Indy sollte es etwas ähnliches geben.. writeLn z.b.

Grüße
Klaus
Klaus

Geändert von Klaus01 (20. Aug 2015 um 21:29 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz