Entwickler-Ecke

Internet / Netzwerk - Artnet mit Delphi


jojo1991 - Sa 01.08.09 16:07
Titel: Artnet mit Delphi
Hallo Forum,

wie in der Überschrift schon angedeutet, möchte ich Artnet, ein Lichtsteuerprotokoll, mit Delphi dekodieren.
Soweit die Idee. Jetzt fangen jedoch meine Probleme an. Das Protokoll (siehe Anhang) schreibt für die einzelnen Bits eines UDP Frames genaue Funktionen vor. Da ich bisher nichts mit Netzwerk gemacht habe, habe ich mich erst mal ein bisschen schlau gemacht. Pinzipiell gibt es ja drei Möglichkeiten UDP zu empfangen:

1) Die in Delphi integrierte Komponente. (die jedoch angeblich diverse Fehler hat, ich selbst habe Delphi7)
2) Die Indy Komponente für UDP Empfang.
3) Die UDP Komponente von Narses. (die jedoch "nur" eine begrenzte Framelänge hat und zudem nur Strings liefert)

Mit der 3. Komponente habe ich schon mal herumgespielt und auch einen Empfang zustande gebracht. Jedoch bekam ich als Ausgabe in einer Listbox immer nur Artnet, also nur den "echten" String im Datenpaket. Die restlichen Daten fehlten komplett.

Zu was würdet ihr mir empfehlen?

Viele Grüße

Jojo


Narses - Sa 01.08.09 23:40

Moin!

user profile iconjojo1991 hat folgendes geschrieben Zum zitierten Posting springen:
3) Die UDP Komponente von Narses. (die jedoch "nur" eine begrenzte Framelänge hat und zudem nur Strings liefert)
Eventuell solltest du nochmal die Doku genauer lesen. ;) Die Framelänge ist nicht von der Komponente begrenzt, sondern vom IP-Stack des OS (konkret: MTU). :idea: Und wer hat was von "nur Strings liefern" gesagt? :gruebel: (auch wenn (ANSI-)Strings ein ziemlich genialer Container in Delphi sind 8))

user profile iconjojo1991 hat folgendes geschrieben Zum zitierten Posting springen:
Mit der 3. Komponente habe ich schon mal herumgespielt und auch einen Empfang zustande gebracht. Jedoch bekam ich als Ausgabe in einer Listbox immer nur Artnet, also nur den "echten" String im Datenpaket. Die restlichen Daten fehlten komplett.
Ich habe mir das Protokoll nicht angesehen, aber wenn es Binärdaten enthält, dann kannst du die natürlich nicht so ohne weiteres in einer Listbox ausgeben - egal mit welchem API-Wrapper du die Daten empfangen hast. :nixweiss:

cu
Narses