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.


Thema geschlossen 

Übergeben einer Struktur!



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!

08.01.2007, 19:11
Beitrag #12

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.704
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Übergeben einer Struktur!
' schrieb:Die letzten 2 Sätze verstehe ich nicht wirklich.

Folgendes sollte eigentlich funktionieren:

Code:
long Unterprogramm(unsigned long Handle, long AIN1, long AIN2, long AIN3, long AIN4, long AIN5, long AIN6, long AIN7, long AIN8, long SCAN, long dio1_direction, long dio2_direction);
So muss der Funktionskopf der DLL-Funktion in LV8.2 aussehen, nachdem du ihn manuell erstellt hast.

Wenn tatsächlich die Daten explizit übergeben werden, dann liegen sie genau so auf dem Stack - respektive so werden sie mittels des Stacks an das Unterprogramm in der DLL übergeben. Die C++-Anweisung "typedef struct { .. } _AIN;" definiert praktisch einen Speicherbereich, der 8*U32 breit ist. Durch das Benutzen einer Variablen (hier: Analog) des Typs _AIN wird praktisch ein Speicherbereich von 8*U32 referenziert. Schreibst du als Parameter "Analog" in den Funktionskopf, so "kopiert" der Kompiler automatisch diese 8 U32 auf den Stack. Und ob da nun eine Variable, die aus 8 U32 besteht, oder acht Variablen, von denen jede einzelne aus 1 U32 besteht, kopiert werden - für das Unterprogramm in der DLL ist das egal. Hier gilt: es müssen 8 (respektive eben 12) U32 hintereinander am Stack liegen.

Probier das mal aus und sag Bescheid, ob's geklappt hat oder nicht.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
to top
30
Thema geschlossen 


Nachrichten in diesem Thema
Übergeben einer Struktur! - B.C.I. - 18.12.2006, 08:58
Übergeben einer Struktur! - IchSelbst - 18.12.2006, 09:59
Übergeben einer Struktur! - B.C.I. - 18.12.2006, 10:17
Übergeben einer Struktur! - IchSelbst - 18.12.2006, 10:28
Übergeben einer Struktur! - B.C.I. - 18.12.2006, 14:54
Übergeben einer Struktur! - IchSelbst - 18.12.2006, 16:22
Übergeben einer Struktur! - B.C.I. - 18.12.2006, 16:27
Übergeben einer Struktur! - IchSelbst - 18.12.2006, 18:10
Übergeben einer Struktur! - B.C.I. - 08.01.2007, 13:50
Übergeben einer Struktur! - IchSelbst - 08.01.2007, 14:22
Übergeben einer Struktur! - B.C.I. - 08.01.2007, 15:00
Übergeben einer Struktur! - IchSelbst - 08.01.2007 19:11
Übergeben einer Struktur! - B.C.I. - 22.01.2007, 09:41

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Struktur mit Zeiger auf weitere Struktur an DLL übergeben Wheeliemaster 2 7.679 27.05.2015 08:40
Letzter Beitrag: Wheeliemaster
  Daten einer Struktur aus LV einer DLL übergeben Predator 11 11.342 12.06.2007 14:00
Letzter Beitrag: rolfk

Gehe zu: