Laden...

XModem Klasse mit CRC

Erstellt von andreas6483 vor 16 Jahren Letzter Beitrag vor 16 Jahren 5.557 Views
A
andreas6483 Themenstarter:in
2 Beiträge seit 2007
vor 16 Jahren
XModem Klasse mit CRC

Beschreibung:

XModem ist zwar alt, aber einfach und robust. Da ich auf iPAQ unter Windows Mobile entwickle und Datenübertragung über den seriellen Bluetooth Port nutze (SPP), bietet sich XModem geradezu an kleine und simple Dateien zu übertragen.

Leider gibt es keine freien Bibliotheken die das erledigen, darum hab ich diese Klasse selbst aus alten C Codes übersetzt bzw. große Teile selbst geschrieben.

Der Code ist komplett in C# geschrieben. Die Übertragung ist zu 100% kompatibel mit z.B. MS Hyperterminal.

Für die Übertragung selbst wird lediglich ein System.IO.Ports.SerialPort benötigt. Das praktische daran ist, dass diese Klasse mittlerweile sowohl im .NET Framework als auch im .NET CF Framework existiert. Darum kann man die XModem Klasse sowohl unter Windows als auch unter Windows Mobile problemlos einsetzen.

Eventuell kann ja jemand diese Klasse brauchen! Ich würde mich auch über Rückmeldungen, gefundene Bugs, Verbesserungsvorschläge freuen!

**
Aktuelle Version der Sourcen und Beispiele zur Anwendung zu finden auf:
http://net.trackday.cc/**

XModem, C#, .NET

871 Beiträge seit 2005
vor 16 Jahren

Hallo,
schönes Projekt, gefällt mir und lässt sich sicherlich mal verwenden wenn es wieder mal um Datenübertragung auf serieller Basis gehen soll.
Grüsse,
Egon

S
8.746 Beiträge seit 2005
vor 16 Jahren

Gute Arbeit. Allerdings muss ich gestehen, dass ich ZModem um einiges besser finde (Filenamen-Übertragung, Multi-File, dynamische Blockgrößen, bis zu 25% mehr Durchsatz). Ist aber zugegebenermaßen um einige Größenordnungen komplexer zu implementieren.

A
andreas6483 Themenstarter:in
2 Beiträge seit 2007
vor 16 Jahren

Original von svenson
Gute Arbeit. Allerdings muss ich gestehen, dass ich ZModem um einiges besser finde (Filenamen-Übertragung, Multi-File, dynamische Blockgrößen, bis zu 25% mehr Durchsatz). Ist aber zugegebenermaßen um einige Größenordnungen komplexer zu implementieren.

Klar ... bei mir ist es in einem Projekt darum gegangen eine kleine Datei (paar 100kb) über den seriellen Bluetooth Port zu übertragen.

Und da habe ich einfach eine einfache Lösung gesucht und das war eben XModem. XModem hat halt den Vorteil, dass es ein "Standart" ist und man eben auch mal schnell MS Hyperterminal hernehmen kann um das eigene Programm zu testen, im Gegensatz dazu wenn man den File einfach byte weise rüberschiebt. (was natürlich noch einfacher gewesen wäre)

Zu meiner Verwunderung findet man tatsächlich nix an freiem Code zu dem Thema, obwohl die Implementierung relativ simple ist und wie ich meine doch hin und wieder zu gebrauchen ist.

Vielleicht hat ja wer Lust Y und Z Modem noch zu ergänzen 😁