Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Indy UDP Server Recieve als Byte Array (https://www.delphipraxis.net/108887-indy-udp-server-recieve-als-byte-array.html)

-TheCoke- 20. Feb 2008 18:41


Indy UDP Server Recieve als Byte Array
 
Hallo!


Ist es möglich den Inhalt eines empfangenen UDP Packets in einem Byte Array zu speichern?

Das benutze ich momentan um den Inhalt als String zu bekommen.. Aber wie gesagt, ich bräuchte ein Byte Array in dem dann die einzelnen Zeichen als Hex Wert frin stehen:


Delphi-Quellcode:
procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
  ABinding: TIdSocketHandle);
var
  Text: string;
  StrStream: TStringStream;
begin
  StrStream := TStringStream.Create('');
  try
    StrStream.CopyFrom(AData, AData.Size);
    Text := StrStream.DataString;
  finally
    StrStream.Free;
  end;
end;
Gruß,
Coke

ich2 21. Feb 2008 17:00

Re: Indy UDP Server Recieve als Byte Array
 
servus...

also so habe ich das einmal gelöst gehabt:

Delphi-Quellcode:
   

procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
  ABinding: TIdSocketHandle);
var
  InCommand: array [ 0..2047 ] of Byte;
begin
  // lesen der daten in ein array

  AData.Read ( InCommand, AData.Size );

  // auswerten der Daten
  if InCommand [ 0 ] = $00 then begin
    mache irgendwas
  end;
end;
mfg

-TheCoke- 21. Feb 2008 22:48

Re: Indy UDP Server Recieve als Byte Array
 
Danke .. Das war genau das was ich gesucht habe..

Wenn ich den Inhalt jetzt in der Variable InCommand habe... Wie kann ich dann hinterher den inhalt von InCommand in einen String umwandeln?

Coke


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz