LabVIEWForum.de - VB .net dll mit events in LV einbinden

LabVIEWForum.de

Normale Version: VB .net dll mit events in LV einbinden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Tag/Abend allerseits,

momentan bin ich dabei eine von meinem Kollegen geschriebene VB .net 3.5 dll in LV einzubinden um ein Embedded-System anzusteuern.

Bei dem Embeddedsystem handelt es sich im Prinzip um eine COM gegenstelle die es anzusteuern gitl, das geht über einen USB-UART umsetzer.

Ich habe die Möglichkeit bidirektional den Datenfluss über den verwendeten COM-Port zu verfolgen und auch zu vergleichen.



Das funktioniert alles soweit auch ganz gut, ich bekomme die Funktionsköpfe angezeigt und auch die benötigten Parameter...
Problematisch stellt sich aber die Ausführung der Methoden im Hintergrund dar. Manche Methoden schalten Eventhandler scharf und erstellen
Timing Threads für einen Watchdog der die Kommunikation überwacht.

Die Kommunikation wird auch prinzipiell aufgebaut... aber nach n gesendeten Nachrichten ist schluss... n ist hierbei nie größer als 4 und nie 0.

Es muss im Hintergrund also irgendwas schief laufen, nehme ich an und ich bin mir nicht sicher, ob das überhaupt mit den Events so funktioniert...

Also im Hintergrund der LabVIEW-Anwendung.

Hat sich jemand von euch damit schonmal näher befassen müssen und kann mir generell sagen ob das generell überhaupt geht?


Und ein wichtiger Hinweis noch, die gleiche DLL wird von einer in VB geschriebenen Anwendung verwendet und erfüllt dort ihren Zweck 1A!


Vielen dank schonmal im Voraus

Kai
Soderle, das Problem ist nun seit Montag gelöst.


Es ist also grundsätzlich möglich events aus .net3.5 und auch aus 4.0 mit der LabVIEW.exe.config in LabVIEW abzuhorchen darauf mit den Callbacks zu reagieren.
Auch das erstellen von eigenständigen Threads aus der dll heraus funktioniert einwandfrei.

Der Knackpunkt an der Ausführung war, dass selbstständig Instanzieren muss und das nicht von der ersten aufgerufenen Methode übernehmen lassen kann.
Ebenso muss nach bildung der Instanz deren gebildete Referenz genutzt werden um die Methoden aufzurufen.

Dies ist im Anhang zu betrachten.

Da diese Fragstellung nun beantwortet wurde, bitte ich einen Admin den Thread zu schließen
(05.09.2012 07:38 )LV-KT-BMT schrieb: [ -> ]Soderle, das Problem ist nun seit Montag gelöst.


Es ist also grundsätzlich möglich events aus .net3.5 und auch aus 4.0 mit der LabVIEW.exe.config in LabVIEW abzuhorchen darauf mit den Callbacks zu reagieren.
Auch das erstellen von eigenständigen Threads aus der dll heraus funktioniert einwandfrei.

Der Knackpunkt an der Ausführung war, dass selbstständig Instanzieren muss und das nicht von der ersten aufgerufenen Methode übernehmen lassen kann.
Ebenso muss nach bildung der Instanz deren gebildete Referenz genutzt werden um die Methoden aufzurufen.

Dies ist im Anhang zu betrachten.

Da diese Fragstellung nun beantwortet wurde, bitte ich einen Admin den Thread zu schließen

Da wäre ich nie drauf gekommen. Das ist eine Eigenheit der verwendeten Komponente die nur in der Dokumentation dieser Komponente stehen kann (und in Ermanglung einer solchen Dokumentation entweder im entsprechenden Source eines Beispiels oder durch das Messer an die Kehle des Entwicklers dieser Komponente zu setzen Big Grin).

Viel Vergnügen
Referenz-URLs