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 

DLL findet andere DLL nicht. Wie einbinden?



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!

11.08.2011, 10:47
Beitrag #1

pga Offline
LVF-Neueinsteiger


Beiträge: 2
Registriert seit: Aug 2011

8.5
-
kA



DLL findet andere DLL nicht. Wie einbinden?
Hallo zusammen,
ich benutze gerade zum ersten mal Labview und komme nicht so recht weiter. Leider konnten mir Google und die Forensuche nicht weiter helfen.

Ich habe eine DLL ohne Header-Datei. In der Doku sind die Funktionen beschrieben, sodass ich die DLL mittels Call Lib Function Node einbinden kann. Einige Funktionsaufrufe funktionieren auch, allerdings benötigt eine bestimmte Funktion eine weitere DLL. vi-Datei und die beiden DLLs liegen alle im selben Verzeichnis. Muss ich die DLL noch in ein Labview-Verzeichnis kopieren?
Leider habe ich keinerlei Header, sodass das Einbinden via Labview "import" flach fällt.

Viele Grüße,
Philipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
11.08.2011, 13:44
Beitrag #2

pga Offline
LVF-Neueinsteiger


Beiträge: 2
Registriert seit: Aug 2011

8.5
-
kA



RE: DLL findet andere DLL nicht. Wie einbinden?
Ich habe die DLL ist den System32 Ordner kopiert. Nun funktioniert es.

Beste Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.08.2011, 13:50
Beitrag #3

rolfk Offline
LVF-Guru
*****


Beiträge: 2.302
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
RE: DLL findet andere DLL nicht. Wie einbinden?
(11.08.2011 10:47 )pga schrieb:  Hallo zusammen,
ich benutze gerade zum ersten mal Labview und komme nicht so recht weiter. Leider konnten mir Google und die Forensuche nicht weiter helfen.

Ich habe eine DLL ohne Header-Datei. In der Doku sind die Funktionen beschrieben, sodass ich die DLL mittels Call Lib Function Node einbinden kann. Einige Funktionsaufrufe funktionieren auch, allerdings benötigt eine bestimmte Funktion eine weitere DLL. vi-Datei und die beiden DLLs liegen alle im selben Verzeichnis. Muss ich die DLL noch in ein Labview-Verzeichnis kopieren?
Leider habe ich keinerlei Header, sodass das Einbinden via Labview "import" flach fällt.

Viele Grüße,
Philipp

Abhängige DLLs werden nicht von LabVIEW geladen sondern von Windows wenn LabVIEW das Laden der Haupt-DDL verlangt. Windows sucht nur in folgenden Orten:

1) Wenn die DLL mit dem Namen schon im Speicher ist, dann wird die verwendet.
2) Ansonsten wird im Applikationsverzeichnis geschaut (das ist wo LabVIEW.exe ist)
3) Dann wird im Windows Verzeichnis geschaut
4) Danach im System Verzeichnis
5) Zuletzt in allen Verzeichnissen die in der PATH Environment Variablen aufgeführt sind.

3) und 4) fallen eigentlich aus für einen sauberen Lösungsansatz da man nicht unnötigerweise DLLs in diese Verzeichnisse legen sollte

Daher bieten sich folgende Lösungsansätze an:

1) Das Verzeichnis wo die DLL ist in die PATH Variable mitnehmen
2) Die DLL in das Verziechnis kopieren wo LabVIEW.exe ist, wenn Du dann eine Applikation baust musst Du nicht vergessen diese DLL explizit in das Verzeichnis zu installieren wo <myapp>.exe liegt.
3) Durch ein LabVIEW VI eine der Funktionen der DLL in den Speicher laden, bevor das, VI das die andere DLL benötigt geladen wird. Dieses VI würde nicht ausgeführt sondern sorgt nur dafür dass die DLL schon im Speicher ist wenn das andere VI die DLL zu laden versucht.

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
12.08.2011, 07:22
Beitrag #4

gottfried Offline
LVF-Guru
*****


Beiträge: 1.735
Registriert seit: Mar 2007

2019
2004
EN

20**
Oesterreich
RE: DLL findet andere DLL nicht. Wie einbinden?
Hallo Rolfk,

toll - danke für diese Zusammenfassung!

Gottfried
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
  DLL findet andere DLL und ini File nicht. Wie einbinden? galilio 4 9.249 27.09.2015 15:43
Letzter Beitrag: galilio
  Import Assistent findet Funktionen nicht TDO 1 4.974 11.12.2014 16:24
Letzter Beitrag: jg
  dll einbinden Fehler: Funktion in Bibliothek nicht gefunden mrstrom 1 6.753 06.12.2010 13:40
Letzter Beitrag: oenk

Gehe zu: