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 

C-DLL, Speicherüberschreibung, Arraygröße



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!

02.02.2009, 14:18
Beitrag #1

Pacco di Bango Offline
LVF-Neueinsteiger


Beiträge: 7
Registriert seit: Feb 2009

8.5.1
2008
de_en

17491
Deutschland
C-DLL, Speicherüberschreibung, Arraygröße
Hallo,

ich arbeite gerade daran, externen C-Code als DLL über den Call-Library-Function-Node in LV einzubinden.
Nun habe ich ein Problem mit Speicherüberschreibung.
Ich übergebe ein Array der Länge n an den CLFN, die DLL macht ein Array der Länge 2*n daraus und LV stürzt ab.
Leider kann ich das Ausgabe-Array im C-Code nicht allokieren, da (LabVIEW dann zwar nicht mehr abstürzt aber) das C-Programm nicht mehr das macht, was es soll.
Der Quellcode stammt nicht von mir, sondern ist aus den Numerical-Recipes für C übernommen. Weil ich noch nicht wirklich programmiert habe, verstehe ich diese Routine auch nicht völlig. An sich (unabhängig von LV) funktioniert sie aber.

Nun meine Frage:
Kann ich das Problem innerhalb von LV lösen, ohne die C-Routine zu ändern?!

"Build Array" nützt nichts und
"Initialize Array" kann ich aufgrund unterschiedlicher Datentypen...

("Array element conflict: You have connected an array data type to its element data type. This type conflict may be resolved by indexing the array to access individual elements of the array. Check for a tunnel on a loop that has indexing incorrectly enabled.
The type of the source is 1-D array of
single [32-bit real (~6 digit precision)].
The type of the sink is double [64-bit real (~15 digit precision)].")

...nicht verbinden.

Hoffe auf Hilfe...

Gruß
Pacco

Der Fehler sitzt immer vor der Maschine.
[altes Schneidersprichwort]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
C-DLL, Speicherüberschreibung, Arraygröße - Pacco di Bango - 02.02.2009 14:18

Gehe zu: