Hallo,
wenn ich einen array of cluster durch den writewrapper schicke, so kommt mir ein Fehler. Ich kann nicht ganz verstehen wieso dieser Auftritt.
Zuvor wird der array of cluster mit Daten serialisieren umgewandelt und dann an den writewrapper vom Programmiermuster publish subscrive design pattern geschickt.
Wo kann ich da den Hebel ansetzen?
Danke
montanaro
Fehler im Writewrapper-publish subscriver design pattern
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Fehler im Writewrapper-publish subscriver design pattern
Das Problem ist wahrscheinlich, dass man die Arraygröße beim Empfanger wissen muss. Beim Daten Serialisieren und Deserialisieren gibt es ein Flag, ob die Array und String Größe mitgeschickt werden soll oder nicht.
Zeige bitte die Ausschnitte deines BDs, wo das Arraycluster serialisiert und abgeschickt wird und die Stelle, wo es empfangen und deserialisiert wird.
Zeige bitte die Ausschnitte deines BDs, wo das Arraycluster serialisiert und abgeschickt wird und die Stelle, wo es empfangen und deserialisiert wird.
-
- user
- Сообщения: 81
- Зарегистрирован: 01 сен 2008, 19:14
- Версия LabVIEW: 8.6, 2009
- Откуда: Südtirol-Italien
- Контактная информация:
Re: Fehler im Writewrapper-publish subscriver design pattern
im Anhang meine Ausschnitte. Mit einfachen Datentypen wie Cluster und skalaren Werten klappt es hervorragend, doch in manchen Fällen muss ich mit Array arbeiten. Ein Array of Double z.B. funktioniert auch.
Mich würde wirklich interessieren woran es hier liegen kann.
Danke
montanaro
Mich würde wirklich interessieren woran es hier liegen kann.
Danke
montanaro
-
- user
- Сообщения: 81
- Зарегистрирован: 01 сен 2008, 19:14
- Версия LabVIEW: 8.6, 2009
- Откуда: Südtirol-Italien
- Контактная информация:
Re: Fehler im Writewrapper-publish subscriver design pattern
ich habe nochmals zwei Screen-Shot hochgeladen. Zum einen sieht man das Datenformat, welches zum VI writewrapper gelangt. Ein String gefolgt von einem Array of Cluster.
Ich habe jetzt aschon alles mögliche versucht, aber ich kann einfach nicht verstehen warum es beim Schreiben (TCP) im Ausgang eine Fehlermeldung gibt. Dies Fehlermeldung
habe ich im zweiten Screen-Shot beigelegt.
Bitte um Hilfe.
Danke
montanaro
Ich habe jetzt aschon alles mögliche versucht, aber ich kann einfach nicht verstehen warum es beim Schreiben (TCP) im Ausgang eine Fehlermeldung gibt. Dies Fehlermeldung
habe ich im zweiten Screen-Shot beigelegt.
Bitte um Hilfe.
Danke
montanaro
-
- user
- Сообщения: 81
- Зарегистрирован: 01 сен 2008, 19:14
- Версия LabVIEW: 8.6, 2009
- Откуда: Südtirol-Italien
- Контактная информация:
Re: Fehler im Writewrapper-publish subscriver design pattern
Also, nach langem hin und her konnte ich das Problem lösen.
Zunächst dachte ich, das Datenpaket sei zu lang, habe deshalb bei jedem Event nur das Element des Arrya's übertragen, welches vom Benutzer geändert wurde.
Da auch das nicht ging so kamen mir doch grosse Zweifel auf, da ich Datenpakete mit viel mehr Daten bereits versendet hatte.
Dann ist mir der Fehler per Zufall aufgefallen, indem ich mit der Maus genau über dem "Connection ID" des Write Wrapper stehen geblieben bin. Ich konnte den Anschlusspunkt sehen.
Ich weiss nicht wie aber die Connection Referenz ging unter dem Write Wrapper glatt durch!
Durch anschliessen der beiden Connecion ID (IN und Out) hat alles richtig funktioniert.
Grüsse
montanaro
Zunächst dachte ich, das Datenpaket sei zu lang, habe deshalb bei jedem Event nur das Element des Arrya's übertragen, welches vom Benutzer geändert wurde.
Da auch das nicht ging so kamen mir doch grosse Zweifel auf, da ich Datenpakete mit viel mehr Daten bereits versendet hatte.
Dann ist mir der Fehler per Zufall aufgefallen, indem ich mit der Maus genau über dem "Connection ID" des Write Wrapper stehen geblieben bin. Ich konnte den Anschlusspunkt sehen.
Ich weiss nicht wie aber die Connection Referenz ging unter dem Write Wrapper glatt durch!
Durch anschliessen der beiden Connecion ID (IN und Out) hat alles richtig funktioniert.
Grüsse
montanaro