LabVIEWForum.de
externes Programm (.exe) in das Frontpanel einbinden?? - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: ActiveX & .Net (/Forum-ActiveX-Net)
+---- Thema: externes Programm (.exe) in das Frontpanel einbinden?? (/Thread-externes-Programm-exe-in-das-Frontpanel-einbinden)



externes Programm (.exe) in das Frontpanel einbinden?? - xbounce - 22.01.2013 12:36

Hallo,

ich habe folgendes Problem: Messwerte werden von LabView per UDP an ein C# Programm gesendet, dieses würde ich gerne in meinem Frontpanel darstellen.
Ich weiß ihr haltet mich wohl für verrückt da die Daten hin und her geschoben werden Blush aber in LabView ist die gewünschte Darstellung nicht so einfach zu realisieren.

Gibt es eine einfache Möglichkeit das Programm einzubinden? Über den Befehl System Exec kann ich diese zwar starten, aber wie gesagt möchte ich das Prog. im Frontpanel einbetten. Muss ich über die .dll dieses Programm einbinden?

Das Programm liest die Druckverteilung eines Tragflügels stetig ein und gibt die Werte auf dem eingegebenen Profil, auf den Normalen wieder aus (siehe Abbildung).

Vielen Dank!

[Bild: attachment.php?aid=43167]


RE: externes Programm (.exe) in das Frontpanel einbinden?? - Y-P - 22.01.2013 12:54

Bitte keine externen Bilderlinks bei Beispielen. Rulez
Hab Deine Datei jetzt hier im Froum hochgeladen und Deinen externen Link gelöscht. Anniemacht_2

Mir fällt spontan z.B. .NET als Möglichkeit ein.

Gruß Markus


RE: externes Programm (.exe) in das Frontpanel einbinden?? - xbounce - 22.01.2013 13:00

sorry und danke!
(22.01.2013 12:54 )Y-P schrieb:  Mir fällt spontan z.B. .NET als Möglichkeit ein.

hab ich schon versucht, da erscheint folgenden Fehlermeldung:

System.BadImageFormatException: ...
Die Assembly wird von einer Laufzeit erstellt, die aktueller als die derzeit geladene Laufzeit ist, und kann nicht geladen werden.

Ich kann damit leider nicht´s anfangen und hab darüber auch nix gefunden.


RE: externes Programm (.exe) in das Frontpanel einbinden?? - kpa - 22.01.2013 13:46

Hallo xbounce,

Dein C-Programm kann eine Grafik exportieren -- die kannst Du auf auf Deiner LabView-Oberfläche anzeigen.

Grüße

kpa


RE: externes Programm (.exe) in das Frontpanel einbinden?? - xbounce - 22.01.2013 14:05

(22.01.2013 13:46 )kpa schrieb:  Dein C-Programm kann eine Grafik exportieren -- die kannst Du auf auf Deiner LabView-Oberfläche anzeigen.

ja stimmt, aber ich hätte ja gerne die Werte in "Echtzeit" angezeigt auf meiner Oberfläche,

liebe Grüße


RE: externes Programm (.exe) in das Frontpanel einbinden?? - dali4u - 22.01.2013 15:52

Denknach hmm, vielleicht ein blöde Idee, aber ...

SnagIt (ein Screen Capture Tool) bietet die Möglichkeit einen COM Server
zu erstellen und den mittels C++ Code zu steuern. Vielleicht kann man
über diesen Umweg "alle paar Sekunden" ein Screenshot von Deinem
Tool erstellen und in LabView anzeigen lassen. Keine Ahnung ob sowas
geht, aber ist ja auch nur eine Idee


RE: externes Programm (.exe) in das Frontpanel einbinden?? - rolfk - 24.01.2013 09:54

(22.01.2013 12:36 )xbounce schrieb:  Hallo,

ich habe folgendes Problem: Messwerte werden von LabView per UDP an ein C# Programm gesendet, dieses würde ich gerne in meinem Frontpanel darstellen.
Ich weiß ihr haltet mich wohl für verrückt da die Daten hin und her geschoben werden Blush aber in LabView ist die gewünschte Darstellung nicht so einfach zu realisieren.

Gibt es eine einfache Möglichkeit das Programm einzubinden? Über den Befehl System Exec kann ich diese zwar starten, aber wie gesagt möchte ich das Prog. im Frontpanel einbetten. Muss ich über die .dll dieses Programm einbinden?

Das Programm liest die Druckverteilung eines Tragflügels stetig ein und gibt die Werte auf dem eingegebenen Profil, auf den Normalen wieder aus (siehe Abbildung).

Vielen Dank!

[Bild: attachment.php?aid=43167]

Ausser den statischen Methoden mit SnagIt und dergleichen gibt es grundsätzlich zwei Möglichkeiten um das zu erreichen. Beide sind nicht trivial and auch nicht gerade für Anfänger.

Der erste ist um Dein Programm in ein ActiveX oder .Net Control umzuschreiben. Dann kannst Du sie in LabVIEW in einen entsprechenden Container integrieren.

Die zweite ist durch Aufruf von Windows API Funktionen dein Programmfenster als Childwindow in ein LabVIEW Panel zu plazieren. Die Windows API Aufrufe dazu sind an sich nicht so extrem kompliziert, aber einige C Programmierkenntnisse sind nicht nur nützlich sondern eigentlich unerlässlich. Auch funktioniert das grundsätzlich schon, kann aber einige unschöne Effekte verursachen, je nachdem was für eine Eventabhandlung dein anderes Programm in der UI Loop macht. LabVIEW ist darin in einigen Dingen etwas spezial und wenn das andere Programm auch eigene tiefgehende Eingriffe in die eigene Eventqueue macht, kann sich das schon mal beissen.


RE: externes Programm (.exe) in das Frontpanel einbinden?? - oenk - 25.01.2013 14:01

(22.01.2013 13:00 )xbounce schrieb:  System.BadImageFormatException: ...
Die Assembly wird von einer Laufzeit erstellt, die aktueller als die derzeit geladene Laufzeit ist, und kann nicht geladen werden.

Ich kann damit leider nicht´s anfangen und hab darüber auch nix gefunden.
Ich nehme an, dass die .NET Applicatoin mit .NET 4.0 geschrieben wurde und somit in LabVIEW nicht geladen werden kann.
Versuch es mal damit:
Loading .NET 4.0 assemblies in LabVIEW
Gruess,
\c