INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Knoten zum Aufruf externer Bibliotheken



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

04.07.2006, 07:13 (Dieser Beitrag wurde zuletzt bearbeitet: 04.07.2006 07:27 von xtro.)
Beitrag #1

xtro Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 95
Registriert seit: Nov 2005

Labview 2009 professional Edition
2004
de

41747
Deutschland
Knoten zum Aufruf externer Bibliotheken
Guten morgen

Ich habe folgendes Problem und hoffe jemand wäre so nett mir zu helfen.
Ich habe ein VI geschrieben welches ich als .dll im Aplikationbuilder erzeugt habe.

Jetzt will ich diese .dll über ein "Knoten zum Aufruf externer Bibliotheken" aufrufen.
Doch jetzt kommt folgendes Problem die .dll enthält Cluster also Strukturen unter C doch finde ich diese nicht nur Strings,numerisch,active X,Signalverlauf,Array aber leider kein aufruf von Strukturen.

Beim Application Builder stand folgendes
Void void Alarm(TD1*errorout,TD1*errorin,*unsigned char RID,unsigned char DeviceNode)

Aber finde nirgends TD1 beim "Knoten zum Aufruf externer Bibliotheken"

Und wie ruft man in dem Selben Eine Visa Resource auf

Vielen Dank im voraus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
04.03.2007, 17:04
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Knoten zum Aufruf externer Bibliotheken
Hallo,

ich verstehe nicht ganz, wieso Du aus einem VI eine .dll machst, nur um diese .dll, dann wieder umständlich in einem VI aufzurufen.
Reicht Dir da nicht ein SubVI?

Gruß Markus

' schrieb:Guten morgen

Ich habe folgendes Problem und hoffe jemand wäre so nett mir zu helfen.
Ich habe ein VI geschrieben welches ich als .dll im Aplikationbuilder erzeugt habe.

Jetzt will ich diese .dll über ein "Knoten zum Aufruf externer Bibliotheken" aufrufen.
Doch jetzt kommt folgendes Problem die .dll enthält Cluster also Strukturen unter C doch finde ich diese nicht nur Strings,numerisch,active X,Signalverlauf,Array aber leider kein aufruf von Strukturen.

Beim Application Builder stand folgendes
Void void Alarm(TD1*errorout,TD1*errorin,*unsigned char RID,unsigned char DeviceNode)

Aber finde nirgends TD1 beim "Knoten zum Aufruf externer Bibliotheken"

Und wie ruft man in dem Selben Eine Visa Resource auf

Vielen Dank im voraus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.06.2007, 15:28 (Dieser Beitrag wurde zuletzt bearbeitet: 12.06.2007 15:29 von rolfk.)
Beitrag #3

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Knoten zum Aufruf externer Bibliotheken
' schrieb:Guten morgen

Ich habe folgendes Problem und hoffe jemand wäre so nett mir zu helfen.
Ich habe ein VI geschrieben welches ich als .dll im Aplikationbuilder erzeugt habe.

Jetzt will ich diese .dll über ein "Knoten zum Aufruf externer Bibliotheken" aufrufen.
Doch jetzt kommt folgendes Problem die .dll enthält Cluster also Strukturen unter C doch finde ich diese nicht nur Strings,numerisch,active X,Signalverlauf,Array aber leider kein aufruf von Strukturen.

Beim Application Builder stand folgendes
Void void Alarm(TD1*errorout,TD1*errorin,*unsigned char RID,unsigned char DeviceNode)

Aber finde nirgends TD1 beim "Knoten zum Aufruf externer Bibliotheken"

Und wie ruft man in dem Selben Eine Visa Resource auf

Vielen Dank im voraus

Was Du tun willst geht zwar prinzipiel, aber der Nutzen ist wie schon eher erwähnt fragwürdig.

Verwende in der Konfiguration zum DLL Aufrufknoten den Adapt to Type (oder eine entsprechende deutsche Übersetzung wenn Du ein deutsches LabVIEW verwendest) für diesen Parameter.

Dann musst Du natürlich auch sicherstellen, das die verwendete Clusterdefinition sowohl im DLL-VI wie im Aufruf-VI exakt gleich ist, sonst ziemlich sicher -> Crash, aber garantiert Unsinn.

Und da diese DLL dann sehr spezifisch LabVIEW Datentypen gebraucht ist eine Verwendung von einer anderen Umgebung heraus meist mühsam bis sinnlos. Also warum dann die Mühe überhaupt?

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.09.2007, 09:42
Beitrag #4

petit_spirou Offline
LVF-Grünschnabel
*


Beiträge: 12
Registriert seit: Sep 2007

11.0
2005
DE

34132
Deutschland
Knoten zum Aufruf externer Bibliotheken
' schrieb:Und da diese DLL dann sehr spezifisch LabVIEW Datentypen gebraucht ist eine Verwendung von einer anderen Umgebung heraus meist mühsam bis sinnlos. Also warum dann die Mühe überhaupt?

Rolf Kalbermatter

Ich hätte eine Anmerkung zu Deiner letzten Aussage:
Ich könnte mir vorstellen eine DLL aus LV-Code zuerstellen, um meine Anwendung zu modularisieren: d.h. wenn in einer Funktion, die
in der DLL vorhanden ist, ein Fehler korrigiert wird, dass man dann nicht die Anwendung komplett neu erstellt, sondern nur die DLL austauscht. Oder gibt es da bessere Möglichkeiten?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2007, 06:32 (Dieser Beitrag wurde zuletzt bearbeitet: 28.09.2007 06:35 von rolfk.)
Beitrag #5

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Knoten zum Aufruf externer Bibliotheken
' schrieb:Ich hätte eine Anmerkung zu Deiner letzten Aussage:
Ich könnte mir vorstellen eine DLL aus LV-Code zuerstellen, um meine Anwendung zu modularisieren: d.h. wenn in einer Funktion, die
in der DLL vorhanden ist, ein Fehler korrigiert wird, dass man dann nicht die Anwendung komplett neu erstellt, sondern nur die DLL austauscht. Oder gibt es da bessere Möglichkeiten?
Dasselbe ist prinzipiel mit externen VIs zu erreichen, die Du via VI Server dynamisch (Call by Reference) aufrufst. Da gibt es zwar ein paar nicht so schöne Probleme beim Gebrauch von (strict) typedef Controls die sowohl in der externen Componenete vorkommen als auch in der aufrufenden Applikation selbst wenn sie denselben Namen benützen. Das Problem hast Du aber bei einer LabVIEW DLL innerhalb einer LabVIEW Applikation ebenso, also das bringt keinen wirklichen Vorteil.

Ansonsten ist der Weg über ein DLL Interface eigentlich nur:
1) Langsamer (der extra DLL Interface Overhead ist zwar nicht erschreckend bei Gebrauch von LabVIEW Datentypen aber trotzdem)
2) Komplizierter
3) Keine Datentypencompatibilitätscheck zur Laufzeit, also wenn Du einen String an einen Parameter gibst der ein Array oder noch etwas anderes erwartet -> Crash
4) Umständlicher dann ein VI oder eine VI Library.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Aufruf externer Bibliotheken / Keyence / Schnittstelle _Markus_ 1 5.612 20.05.2019 12:23
Letzter Beitrag: _Markus_
  LabView Wrapper - PostUserEvent aus externer DLL Stephan235 3 9.849 22.07.2015 13:28
Letzter Beitrag: rolfk
  Fehler 1097 bei Knoten zum Aufruf externer Bibliotheken in CLF-Knoten.vi KingLui 2 7.126 16.09.2014 13:47
Letzter Beitrag: KingLui
  Einbinden externer DLL St_Markus 1 6.266 28.05.2013 15:25
Letzter Beitrag: rolfk
  VI als externer Code finalr 1 4.497 23.11.2012 08:58
Letzter Beitrag: GerdW
  Array Elemnte von externer Funktion verbinden Heili 3 4.590 12.11.2010 13:54
Letzter Beitrag: Lucki

Gehe zu: