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 für ältere USB Camera einbinden .h fehlt



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!

29.04.2008, 23:21
Beitrag #10

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
.dll für ältere USB Camera einbinden .h fehlt
' schrieb:Hallo Silvio,

das erste, was mir aufgefallen ist: Du hast keinen Speicher für die Daten, die Du abholen willst, reserviert. Du übergibst der dll-Funktion den Zeiger auf die Adresse im Speicher, wo die dll die Daten ablegen soll und wovon Dein VI die Daten lädt. Wenn Du diesen Speicherbereich zuvor nicht für Deine Applikation reservieren läßt, schreibt die Funktion die Daten irgendwo im Speicher hin und das führt in der Regel zum Crash. Entweder kommt eine LV-Fehlermeldung und die Ausführung des VIs wird abgebrochen oder es erscheint ein Fenster "LabVIEW hat einen Fehler verursacht und muß beendet werden"
Den Speicher reservierst Du, indem Du ein Feld anlegst, das so viele Elemente hat, wie Du Bildpunkte erhältst und zwar in dem Datenformat, wie die Funktion Dir liefert.

Hallo Andreas

Das mit dem Speicher war schon in Ordnung. Seit LabVIEW 8.2 (oder vielleicht 8.0) kann man bei einem Arrayparameter einen anderen skalaren Parameter als Minimum Size angeben. Dann alloziert LabVIEW den entsprechenden Speicher vor dem DLL Aufruf wenn kein gültiges Array angeschlossen ist (oder bei einem zu kleinen Array resized es den). Und das macht Silvio auch ganz richtig so.

In älteren LabVIEW Versionen hättest Du aber vollumfänglich recht, dass man den entsprechenden Speicher erst explizit allozieren muss indem man z.B. ein Array mit der nötigen Grösse initialisiert.

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
30
Antwort schreiben 


Nachrichten in diesem Thema
.dll für ältere USB Camera einbinden .h fehlt - rolfk - 29.04.2008 23:21

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  SubVI mit DLL Call fehlt in exe NoWay 1 6.202 30.08.2019 13:15
Letzter Beitrag: Freddy

Gehe zu: