' schrieb:Ok, danke dafür.
Es funktioniert zwar, ist aber auch nicht wesentlich schneller. Gibt es keine Möglichkeit einen Pointer auf Daten direkt an LV zu übergeben? Die Daten die aufgenommen werden haben den Datentyp Unsigned+16. Oder kann man sogar anstallt PostLVUserEvent Daten direkt in die LV Queu schieben.
Danke
Nein, LabVIEW hat ganz spezifische Anforderungen an Speicherbereiche und da kommt man nicht umhin. Die einzige sinnvolle Möglichkeit ist wie schon gesagt das Allozieren eines LabVIEW Handles und dann die Übergabe des C Speicherpointers darin an Deine andere Library. Die muss dazu natürlich die Übergabe eines Heapspeichers zulassen. Wenn sie darauf besteht diesen selber anzulegen (ob onboard oder wie auch immer) dann ist's das Ende der Geschichte.
Da ist nichts zu machen. Da muss schon die Treiberbibliothek die Flexibilität mitbringen. Mit Visual Basic uns so ziemlich jeder anderen höheren Entwickelumgebung ausser C (wobei viele C als alles ausser höhere Programmiersprache einstufen) wäre das grundsätzlich nicht anders.
Rolf Kalbermatter