WinINet.inc - Eine Inc für verbesserte und erweiterte FTP-Funktionen

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    Unsere Datenschutzerklärung wurde aktualisiert. Mit der Nutzung unseres Forums akzeptierst Du unsere Datenschutzerklärung. Du bestätigst zudem, dass Du mindestens 16 Jahre alt bist.

    • Na du lädst doch mit FTP Dateien, die u.U. Werte enthalten?
      Je nach Netzwerk-Reihenfolgekonvention (Network Order) muss man die Datenkonventionen dann an den eigenen PC anpassen (oder eben nicht, wenn man Glück hat). Da hilft dann das Proc von Michael.
      Aber er sollte Dir das vielleicht selbst erläutern.
    • Duecsateien enthalten was auch immer, das weiß das Programm natürlich nicht. Warum sollte da was umgewandelt werden?
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Beispiel: FTP kennt unterschiedliche Übertragungsmodi vom und zum FTP-Server, z.B. BINÄR oder ASCII/ANSI. Überträgt man falsch, wird z.B. oft die Zeilenschaltung nicht verstanden, und aus dem Text wird eine einzige Wurst ohne Umbrüche.
      Ähnlich innerhalb von Binärdaten selbst: Da gibt es Zahlenformate, die mit dem höchsten Byte anfangen und andere, die mit dem niedrigsten Byte anfangen. Wäre schön, wenn anlässlich des Download von unterschiedlichen Systemen die Daten gleich richtig ankommen.

      Du hast allerdings insofern recht, als einem mit der reinen Übertragung befassten Programmierer das auch egal sein kann - solange nicht über Netze mit unterschiedlichen Adressierungsformaten gearbeitet werden soll.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von p. specht ()

    • Die Inc überträgt grundsätzlich binär. Sorgt nicht die API dafür, dass alles so ankommt wie es abgeschickt wurde? Ich habe mir noch keine Gedanken darüber gemacht, weil ich nicht damit gerechnet habe, dass es möglich ist, dass im Binärmodus was anders ankommen sollte.
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Es kommt darauf an wie tief Du bei der Internet.inc einsteigen möchtest.
      Die gehobenen Routinen sind alle schon intern auf die Network-Order getrimmt.

      Wenn Du aber auch das arbeiten mit Sockeln anbieten möchtest, dann gerätst Du zwangsläufig an Parameter, die zwingend in Network-Order übergeben werden müssen.
      Solange da keine Werte übergeben werden müssen, die vor/nach der Umsetzung die halbe Quadint-Länge überschreiten (also das Sign-Bit setzen) ist auch alles in Ordnung.
      Aber man muss dies natürlich wissen und auch berücksichtigen, wenn man diese Grundroutinen schreibt.

      Schauen wir einfach mal, was da für die Internet.inc noch so alles zusammen kommt.
      Programmieren, das spannendste Detektivspiel der Welt.
    • Mein erstes Anliegen war ein http-Download, bei dem die Datei nicht auf der Platte landet sondern im RAM, als Bereich. Da halte aber momentan.
      Zwischenzeitlich will ich mich erst nochmal der MyFTP.inc widmen. Es fehlt noch der Code für die multiplen Verbindungen in der Version für XProfan X2. Außerdem will ich die asynchrone Verarbeitung angehen, also mehrere Befehle quasi gleichzeitig ausführen.
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 0.9.18/0.9.15a:
      - Verbesserungen in der Verbindungsverwaltung. Vor dem Programmende sollte "DisconnectAll" aufgerufen werden, egal ob schon alle Verbindungen geschlossen wurden oder nicht.
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 0.9.19:
      - Angleichung der Quellcodes, so dass auch mit der WinINet.inc mehrere Verbindungen gleichzeit aufgebaut und verwaltet werden können.
      - Genauere Fehlercodes, wenn die Verbindung nicht aufgebaut werden kann. Bisher nur "Benutzer oder Passwort falsch".
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 0.9.22:
      - kleine interne Änderung, nicht lebenswichtig
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 1.0.25:
      - kleine Fehlerbehbung in 2 Funktionen (betraf nur die WinINet.inc).
      - Neue Funktion ListDirStruct: Listet alle Unterverzeichnisse eines Ordners auf.
      - Neue Funktion ListDirSub: Funktioniert wie ListDir, nur dass alle Unterordner ebenfalls durchsucht werden.
      - Neue Set/Get-Funktion: MyFTPListDirMode. Wird dieser Schalter auf 1 gesetzt gibt ListDir nicht nur den Dateinamen sondern den Dateinamen mit dem kompletten Pfad zurück. Gilt nicht für ListDirSub, dort wird immer der komplette Pfad mit Dateiname zurückgegeben. Gilt auch nicht für ListDirStruct, dort werden immer komplette Pfade zurückgegeben.

      Ich habe die Inc sehr oft getestet und benutze sie in einigen meiner Projekte erfolgreich. Ich denke es ist Zeit für Version 1.0.
      Für Anregungen, Verbesserungen, Erweiterungen und natürlich Bugreports stehe ich jederzeit zur Verfügung.

      Euch allen frohe Weihnachten und allen, die kein Weihnachten feiern, einen schönen Jahresausklang. :-)
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 1.0.26:
      - Starke Optimierung der Funktion ListDirSub: Sie arbeitet jetzt deutlich schneller.
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 1.0.27:
      - Bugfix für ListDirSub (2 Zeilen vertauscht, betraf nur Modus MyFTP("ListDirSub",S1|N1,N2)
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 1.0.28:
      - UTF8-Modus und ListDir-Modus werden nun für jede Verbindung gespeichert
      - Neuer Befehl: CleanUp
      - Etliche Funktionen aufgeräumt und optimiert
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 1.0.29:
      - Erweiterung für Connect (ID kann automatisch vergeben werden). Wurde für meine neue Inc benötigt. Mehr dazu später.
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 1.0.30:
      - Bugfix für IsConnected. Es konnte ein Fehler auftreten, wenn keine Verbindung bestand.
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Update auf Version 1.0.31:
      - Bugfix für etliche Funktionen. Mein Dank geht hierbei komplett an Michael Wodrich, der mich auf einige Bugs hingewiesen hat. Im Einzelnen: bei einigen Funktionen konnte ein Fehler hervorgerufen werden, wenn die Nummer einer Verbindung ungültig war und die Funktion DeleteDirSub hatte 2 Bugs (Funktion wurde nicht abgearbeitet bzw. falsche Übernahme von Parametern).
      - Alle Funktionen prüfen jetzt, ob die Anzahl der übergebenen Parameter korrekt ist. Falls nicht wird -2 zurückgegeben.
      - Bei der Funktion DeleteDirSub kann der 2. Parameter jetzt weggelassen werden.

      Ein weiterer potenzieller Bug bezüglich SwitchTo wird noch untersucht (auch hier hat mich Michael Wodrich darauf hingewiesen. Ein Bugfix folgt gegebenenfalls zeitnah.
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net
    • Neu

      Ich kümmer mich bald darum, bin aber gerade in Berlin und nächste Woche in Hannover.
      XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
      Ryzen 1700X/MSI B350 PC MATE/16GB RAM@2933MHz/Radeon HD7770 OC/Creative X-Fi XTreme Music/90TB HDD+256GB Samsung 960 EVO/28" Samsung 4k
      XBox Classic/360S/One S/One X Scorpio Edition/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84) auf 60" 4k/3D LG
      OnePlus 7 8GB/256GB
      jacdelad.bplaced.net