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 

Übergabe eines struct arrays an eine DDL und wieder Auslesen



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!

10.08.2010, 10:11
Beitrag #1

SK-AC Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Aug 2010

2010
2010
de

52064
Deutschland
Übergabe eines struct arrays an eine DDL und wieder Auslesen
Hallo,

ich muss eine DLL nutzen, die eine Funktion mit einem etwas komplexen Übergabe Parameter hat.

typedef struct
{
int aa;
int bb;
char cc[16];
char dd[128];
} STRUCT;

int32_t Funktion(STRUCT** a , const char* b, int c);

Soweit ich weiß, ist a ein Array von 5 STRUCT Elementen.

Ich habe schon einiges versucht aber seitdem ich weiß, dass das ein Doppelpointer ist, stehe ich vor einer Wand.
Kann jemand Licht ins dunkle Bringen?

Danke,
Stefan

PS.: Die Namen sind verschleiert.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.08.2010, 11:36
Beitrag #2

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Übergabe eines struct arrays an eine DDL und wieder Auslesen
Das ist mit standard LabVIEW tools nicht zu tun (wegen des Doppelpointers) und eine Wrapper DLL wäre hier eindeutig angewiesen. Es ist zudem komisch dass diese Struktur als Doppelpointer übergeben wird. Das könnte darauf hinweisen dass der Speicher dafür in der Funktion angefragt wird (eigentlich unsinnig für eine fixed size Struktur) und es braucht auch nicht so zu sein. Wenn es so ist müsste man aber auch noch wissen mit welchem Memoryallocator sie angelegt wurde um nach dem Gebrauch den entsprechenden Deallocator dafür aufrufen zu können. Oder die DLL müsste den entsprechenden Deallocator ebenfalls exportieren.

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
10.08.2010, 14:41
Beitrag #3

SK-AC Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Aug 2010

2010
2010
de

52064
Deutschland
Übergabe eines struct arrays an eine DDL und wieder Auslesen
Hallo,

dann muss ich mich da wohl reinarbeiten ...

Danke,
Stefan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.08.2010, 08:14
Beitrag #4

SK-AC Offline
LVF-Grünschnabel
*


Beiträge: 14
Registriert seit: Aug 2010

2010
2010
de

52064
Deutschland
Übergabe eines struct arrays an eine DDL und wieder Auslesen
Hallo,

ich habe nun eine Wrapper DLL.
Und von dem Struct sind 16 Elemente in einem Array.

int gw_AttachToDeviceList(STRUCT* a , int size);

Nun wollte ich das Struct als Cluster und das Array als Array bauen.
Aber das will nicht an die Funktion passen.
Was muss ich da als Parameter einstellen?

Danke,
Stefan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
12.08.2010, 17:01
Beitrag #5

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Übergabe eines struct arrays an eine DDL und wieder Auslesen
Das sind fixed size arrays (wegen der [n] hinter dem Namen) und werden von einem C Compiler inlined in die Struktur gelegt. Das kann man in LabVIEW durch einen Cluster innerhalb des Clusters simulieren der die entsprechenden Anzahl Elemente des entsprechenden Typs enthält.

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 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  DLL mit String Nullpointer Übergabe Hubert R. 5 5.994 25.08.2023 11:43
Letzter Beitrag: rolfk
  C-Funktion benötigt Struct Forest 3 6.911 04.05.2013 23:38
Letzter Beitrag: rolfk
  Problem bei Struct Einbindung wie in C/C++ raverel 5 8.775 24.04.2013 14:22
Letzter Beitrag: raverel
  Probleme mit Handler und Struct ElBartscho 3 5.345 16.11.2012 19:35
Letzter Beitrag: rolfk
  DLL-Einbindung, Struct mit verschiedenen Datentypen als Pointer übergeben hawk72 4 11.071 11.05.2012 14:41
Letzter Beitrag: hawk72
  in LV auf dll union zugreifen (struct {union{array;struct{ };BYTE}) Dommas 2 6.876 14.06.2011 10:20
Letzter Beitrag: Dommas

Gehe zu: