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 

Hin - und zurückschreiben von Arrays aus LV an DLL



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!

05.04.2007, 12:53 (Dieser Beitrag wurde zuletzt bearbeitet: 05.04.2007 12:56 von Predator.)
Beitrag #8

Predator Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 62
Registriert seit: Mar 2007

8.50
2006
DE

29393
Deutschland
Hin - und zurückschreiben von Arrays aus LV an DLL
hallo...zur beschreibung des Programms:
aus einer Reihe von Messdaten sollte eine Hüllkurve berechnet werden. Um das Problem zu lösen habe ich die Messdaten in eine DLL geschrieben und dort ausgewertet. Den Auswertalgorithmus habe ich in c geschrieben und in der DLL eingefügt. Als Rückgabe wird die berechnetete Hüllkurve als Array[4096] nach LV ausgegeben. Das Problem war das hin-und zurückschreiben von Arrays in LV. LV speichert die Daten, die in der DLL geschrieben werden auf dem Stack und holt sich die Rückgabewerte wieder vom Stack. Ich hoffe das das öffnen und schließen des Stacks in LV oder in der DLL selbst geschieht (sonst kommt es zum Stack overflow).
Beim holen vom Stack muss der Speicherbereich definiert sein, sonst kommt in LV eine Fehlermeldung und das Programm kann nicht ausgeführt werden. Somit hat mich "IchSelbst" mich darauf gebracht, am Eingang des Rückgabeknotens ein definiertes Array anzuschließen und schon läuft das ganze...

Danke IchSelbst... du hast mir das Oster-WE gerettet:-)
Der Funktionsprototyp in der DLL lautet: __declspec (dllexport) long Array (float *ArrayIn, float *Maxwerte, long size, float *ArrayOut)
oder wenn man sich das mit hilfe von LV erstellen lässt:
__declspec (dllexport) long Array (float ArrayIn[], float Maxwerte[], long size, float ArrayOut[])

Die Verdrahtung des Knotens in LV:


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
Hin - und zurückschreiben von Arrays aus LV an DLL - Predator - 05.04.2007 12:53

Gehe zu: