Datei senden (mit anderen Daten)

  • Mein nächstes Problem, im Client gebe ich im Feld die Datei die geschickt werden soll ein und in der InputBox die Datei wo es reingeschreiben werden soll, der erste Feld ist die IP um sich mit dem Server zu verbinden, der einfach @IPAdress1 benutzt. Die neugeschriebene Datei wird allerdings größer, um ca. 5kb, ich finde den Fehler nicht,
    danke im vorraus,
    mfg TheShadowAE

  • Textdokumente über mit 50b gehen, 30000 aber nicht, da kommt ganz viel von sowas irgendwo zwischendrin rein: 6161616161616161616161610D0A6161616161616161616161616161616161610D0A6161616161616161616161616
    Das meiste sind 6 und 1

    PS: Wenn die Dateien binär sind (png usw.) sind sie danach nicht mehr brauchbar

  • Ohne mir den Source anzuschauen, ahne ich, wo der Fehler liegt. Ich hab vor Ewigkeiten sowas mal programmiert, und mich auch drei Nächte damit abgerackert, die Binärdaten richtig zusammenzusetzen.

    [autoit]


    Func sendFile($file)
    $filedata = StringToBinary(FileRead($file))
    $i = 0
    $step = 1023 ; 1023 ; (1024 - 1 = 1023 * 2 = 2046 + 0x = 2048)
    While 1
    $data = BinaryMid($filedata, $i*$step+1, $step)
    $i += 1
    If ($data = "") Then
    ExitLoop
    EndIf
    TCPSend($tcp, $data)
    WEnd
    TCPSend($tcp, $data)
    EndFunc

    [/autoit]

    Ist die Datei vollständig übertragen, wir sie mit FileWrite($line[1], Binary($file_data)) in einer Datei geschrieben. ;)