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 

Array aus DLL zurückgeben



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!

20.04.2006, 13:50
Beitrag #1

DarthZiu Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Apr 2006



kA



Array aus DLL zurückgeben
Ich grüße euch.

Seit 3 Wochen beschäftige ich mich intensiv mit LabVIEW und bin jetzt an ner großen Hürde angekommen, bei der ich nicht weiter weiß.

Gibt es irgendeine Möglichkeit aus einer C/C++ dll ein gefülltes Array an LabVIEW zurückzugeben?

Hintergrund: Ich lese mit einer C dll ein Bild einer Kamera aus und will die Werte (Array mit 640x480 (307200) Werten) in LabVIEW zurückgeben. Ich weiß, dass diese Vorgehensweise nicht optimal ist.
Aber mich interessiert, ob daß überhaupt geht.

Gruß,
Ziu
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
20.04.2006, 13:54
Beitrag #2

oppossom Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 151
Registriert seit: Mar 2006

6.1:7.0
2003
kA


Oesterreich
Array aus DLL zurückgeben
Hi!

Als Rückgabewert direkt geht es nicht (zumindest bis LV7.0). Aber als Pointer in den Parametern sollte es funtkionieren.

Lg Stefan
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.04.2006, 14:00
Beitrag #3

DarthZiu Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Apr 2006



kA



Array aus DLL zurückgeben
Das hab ich schon probiert, auf allen Wegen dir mir eingefallen sind.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.04.2006, 14:11
Beitrag #4

oppossom Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 151
Registriert seit: Mar 2006

6.1:7.0
2003
kA


Oesterreich
Array aus DLL zurückgeben
Kannst du die Syntax, die die dll erwartet mal posten?
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.04.2006, 14:22
Beitrag #5

DarthZiu Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Apr 2006



kA



Array aus DLL zurückgeben
Code:
_declspec (dllexport) long getMarlinImage(long *imageData)

{ }

Der Rückgabewert soll den Fehlercode enthalten und in imageData will ich die Werte schreiben, die ich von meiner Kamera bekomme.

Hab es jetzt schon hinbekommen ein Array zu füllen, allerdings ist es statisch, also die Größe muss schon vor dem dll-Aufruf feststehen. Ich hätt es aber gern dynamisch.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.04.2006, 14:31
Beitrag #6

oppossom Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 151
Registriert seit: Mar 2006

6.1:7.0
2003
kA


Oesterreich
Array aus DLL zurückgeben
ich dachte die Array-Größe ist von der dll (Bildgröße) ohnehin fix vorgegeben?
schau dir mal diesen thread an, da wird gerade diskutiert dass in LV Arrays prinzipiell variable Größe haben
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
20.04.2006, 18:53
Beitrag #7

Martin.Henz Offline
LVF-Team
LVF-Team

Beiträge: 426
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
Array aus DLL zurückgeben
DarthZiu schrieb:
Code:
_declspec (dllexport) long getMarlinImage(long *imageData)

{ }

Der Rückgabewert soll den Fehlercode enthalten und in imageData will ich die Werte schreiben, die ich von meiner Kamera bekomme.

Hab es jetzt schon hinbekommen ein Array zu füllen, allerdings ist es statisch, also die Größe muss schon vor dem dll-Aufruf feststehen. Ich hätt es aber gern dynamisch.

Wenn ich dich bisher richtig verstehe, dann schreibst du auch den C-Code?

In dem Fall kann deine C-Funktion jeden beliebigen LabVIEW Datentyp zurückliefern und Array's in beliebiger Größe (solange genug Speicher vorhanden ist). Du musst dich "nur" damit befassen, wie LabVIEW die Daten intern abbildet. Den Speicher musst du natürlich dann mit Hilfe des LabVIEW Speichermanagers reservieren.

Martin Henz
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 einen String zurückgeben lassen arphex 16 15.350 22.03.2012 09:54
Letzter Beitrag: rolfk
  DLL soll String zurückgeben Honeygirl24 7 6.762 14.10.2008 02:13
Letzter Beitrag: eg

Gehe zu: