Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Indy 10 - Daten über UDPClient verschicken mit SendBuffer (https://www.delphipraxis.net/131902-indy-10-daten-ueber-udpclient-verschicken-mit-sendbuffer.html)

Tempdir 2. Apr 2009 07:14


Indy 10 - Daten über UDPClient verschicken mit SendBuffer
 
Hallo,

ich möchte über die Indy10 UDP-Komponente "UDPClient" daten mit folgender Methode verschicken:

Delphi-Quellcode:
procedure SendBuffer(AHost: string, const APort: Integer, const ABuffer: TIdBytes); virtual; overload;
Mein Problem besteht jetzt darin den ABuffer zu befüllen. Mein Code sieht so aus:

Delphi-Quellcode:
procedure TfrmMain.OnTimer1(Sender: TObject);
var
   DWA : array[0..1024] of DWORD;
   Daten : TBytes absolute DWA;
begin

    //Länge von "Daten" beschränken
    setLength(Daten,20);

    //DWord-Array füllen
    DWA[0] := SFCODE;
    DWA[1] := 0;
    DWA[2] := 5;
    DWA[3] := 111;
    DWA[4] := EFCODE;

    //Daten verschicken
    UDPClient1.Sendbuffer('127.0.0.1',43334,Daten);
end;
Leider ist "Daten" immer leer, das DWORD-Array wird korrekt gefüllt.

Kann mir jemand einen Tipp geben? Ich komme einfach nicht weiter - danke!

Tempdir 2. Apr 2009 10:54

Re: Indy 10 - Daten über UDPClient verschicken mit SendBuffe
 
Ich habs jetzt mal so gelöst bekommen, denke aber dass es ziemlich "unelegant" ist:

Delphi-Quellcode:
procedure TfrmMain.OnTimer1(Sender: TObject);
var
   DWA : array[0..1024] of DWORD;
   BA : array[0..4095] of Byte absolute DWA;
   Test : TBytes;
begin

    //Länge von "Test" beschränken
    setLength(Test,20);

    //DWord-Array füllen
    DWA[0] := SFCODE;
    DWA[1] := 0;
    DWA[2] := 5;
    DWA[3] := 111;
    DWA[4] := EFCODE;

    for i := 0 to 19 do Test[i] := BA[i];

    //Daten verschicken
    UDPClient1.Sendbuffer('127.0.0.1',43334,Test);
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:31 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