DLL zur Laufzeit auswählen - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: DLL & externer Code (/Forum-DLL-externer-Code) +---- Thema: DLL zur Laufzeit auswählen (/Thread-DLL-zur-Laufzeit-auswaehlen) |
DLL zur Laufzeit auswählen - sgersing - 28.02.2006 14:00 Hallo gibt es in LabVIEW die Möglichkeit zur Laufzeit unterschiedliche DLL's aufzurufen? Jetzt kommt der Knackpunkt: die Namen sind beim Programmstart noch nicht bekannt! Gruss Sascha DLL zur Laufzeit auswählen - didierj - 28.02.2006 15:29 Direkt geht's net. Indirekt kannst du jede DLL-Methode über sub-Vi's aufrufen, welche ihrerseits über vi-server aufgerufen werden. Dann gibst du den Pfad des dynamisch aufgerufenen vi's an und nicht der DLL (was ja nicht geht). Die "dynamischen Vi's kannst du in eine LLB packen und somit einer bestehenden Applikation nachträglich beifügen. Willst du allerdings Daten übergeben oder zurückbekommen, müssen die einzelnen "Versionen" der dynamischen Vi's die gleichen Frontpanel-Elemente besitzen. Ansonsten stehst du beim ausprogrammieren vor undendlich vielen Möglichkeiten zur Datenübergabe (da LV sogenannt "strict typed" ist, oder Datentyp muss zu Programmierzeit bekannt sein) und sitzt somit wieder in der Klemme. :kopfgegendiemauer: Didier DLL zur Laufzeit auswählen - sgersing - 28.02.2006 15:56 Die Anschlüsse der DLL sind immer gleich. Leider muss ich dann für jede neue DLL erst ein LabVIEW VI programmieren, damit ich den DLL Knoten konfigurieren kann. Die DLL wird vom Betreiber gestellt und kommt ab und an mit einer neuen Version (interne Verbesserung). Nun möchte er diese zur Laufzeit einbinden. Derzeit ist dies über den Dateinamen gelöst. welcher immer gleich ist. Kunde überschreibt die alte DLL fertig. Nun will er aber Teile mit der alten DLL berechnen und anderen mit einer neueren Version. Die Idee ist es eine eigene DLL zu programmieren, der ich den Dateinamen übergebe und diese intern die Betreiber DLL aufruft. Über die WindowsAPI kann ich DLL laden und entladen. Nun wollte ich das gleich mit LV machen um mir den Programmieraufwand mit der C DLL zu sparen. Falls jemanden doch noch eine Idee einfällt, ich bin für jede Anregung dankbar. Gruss Sascha |