kostenloser Webspace werbefrei: lima-city


TCP Server, unbekannte Stringlänge

lima-cityForumProgrammiersprachenDelphi & Pascal

  1. also ich hab im moment keinen delphi compiler da, aber in PASCAL(is ja bekanntlich mit Delphi verwand), klappt das ganz gut


    program strng;

    var s:string;
    var x:integer;

    begin
    s:='12345678901234567890123456789012abcdefghijabcdefghijabcdefghijabHallo, test';
    x:= 65 ;
    repeat
    write( s[x] );
    x:=x+1
    until(x > Length(s));

    readln;
    end.




    zur Erl?uterung: s ist der empfangene String. 1234.... bzw, abcd..., sind die 32 byte hashes und hallo, test ist der string, den der user oder was auch immer gesendet hat. Klappt allesdings nur, wenn danach nixhts mehr kommt
    alternativ k?nnte man nach guter alter c tradition den string mit nem nul byte abschlie?en(/NUL) 0x0 glaub ich. ob das das tcp/ip transportiert, und ob der delphi kompiler das richtig erkennt ist ne andere frage


    EDIT:

    kleiner nachtrag: nat?rlich nicht mit write ausgeben, sondern an nen anderen string dranh?ngen, und diesen dann auswerten

    Beitrag ge?ndert am 26.08.2005 14:00 von disod
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. dann t?t ich mich mal daran machen, den TCP header auszulesen, da m?sste die l?nge drinstehen. Soweit ich wei?, gibst zumindest bei VB ne funktion im winsock die l?nge auszulesen, bei delfi m?sstes ?ber die api gehen.

    L?sung2:

    du definierst ne endzeichen/String. denn ?bertr?gste den kram base64codiert und fertisch
  4. also mit VB und dem Winsock steuerelement ist das kein problem, da schaut das ganze so aus:

    Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)

    End Sub

    da kann man dann mit bytestotal die l?nge auslesen
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!