LabVIEWForum.de
DLL in C++ (Borland Builder) einbinden - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: DLL & externer Code (/Forum-DLL-externer-Code)
+---- Thema: DLL in C++ (Borland Builder) einbinden (/Thread-DLL-in-C-Borland-Builder-einbinden)



DLL in C++ (Borland Builder) einbinden - JanikaK - 24.08.2010 10:06

Hallo!

Ich habe ein Labview-Projekt, welches eine Messung durchführen soll. Diese Messung soll über ein C++-Programm gestartet werden.

Bisher läuft die Initalisierung, Messung, grafische Anzeige und Beenden in einem VI. Die Messung läuft kontinuierlich und misst pro Durchlauf 1000 Messpunkte. Diese sollen später nach jedem Durchlauf in dem C++-Programm übergeben werden. Also habe ich beim Erzeugen der DLL die verschiedenen Funktionen (Init, Messen, Quit) erzeugt. Diese übergeben jeweils die TaskIDs als LVRefNum-Variablen. Wie gehe ich damit in C++ um, funktioniert das überhaupt?

[attachment=28965]

Meine DLL gibt folgende Prototypen an:

void __cdecl InitMessungSub(LVRefNum *taskID_Read, LVRefNum *taskID_Write, double INI_Array[], int32_t LNge);
void __cdecl MessungSub(LVRefNum *taskID_Write,LVRefNum *taskID_Read, double yi[], double *Temp,
LVRefNum *taskID_write_out, LVRefNum *tastID_read_out, int32_t LNge);
void __cdecl QuitMessungSub(LVRefNum *taskID_read_In, LVRefNum *taskID_write_In);

Vielen Dank für eure Tipps! Janika


DLL in C++ (Borland Builder) einbinden - Stefan616 - 24.08.2010 14:55

Wieso machst du die DLL von den sub-VIs und nicht von dem übergeordneten VI?


DLL in C++ (Borland Builder) einbinden - JanikaK - 25.08.2010 08:16

Hi!

Ich habe die SubVI's genommen, da ich die Daten von dem Messen-VI bei jedem Zyklus an das C-Programm übergeben wollte.

Inzwischen bin ich auch auf die Idee gekommen, das ganze VI in eine DLL umzuwandeln mit dem Ausgang meiner Messwerte. Leider stecke ich gerade mit einem Fehler im CBB fest.

[Linker Fehler] Unresolved external '_main' referenced from C:PROGRAMMEBORLANDCBUILDER6LIBC0X32.OBJ

Werde jetzt mal danach schauen und bin gespannt ob's dann funktioniert.

Danke schon mal!

Edit: Problem gelöst. Hatte das Projekt von einer C-Datei erstellt und somit im Konsolen-Modus. Neues Projekt erstellt mit Form und somit hat's geklappt! Werde das Programm heute nachmittag mal am Zielrechner ausprobieren. Danke für die Hilfe!

JK