LabVIEWForum.de
Variant Datentyp bei C++ dll - 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: Variant Datentyp bei C++ dll (/Thread-Variant-Datentyp-bei-C-dll)



Variant Datentyp bei C++ dll - BastiFantasti - 10.02.2012 14:26

Hallo,

ich bin gerade am Einbinden einer C++ dll in Labview. Einige Funktionen funktionieren auch schon Big Grin

Jetzt komm ich grad an eine Funktion die im Headerfile wie folgt deklariert ist:

_declspec(dllexport) HANDLE WINAPI Create (LPCSTR Name, VARIANT Value, WORD Quality, BOOL IsWritable);

Als Datentypen hab ich eingestellt:

Rückgabetyp: Numerisch, Vorzeichenbehafteter 32Bit INT
Name: Typ String, Format C-String-Zeiger (sollte klappen, hat bei den anderen Funktionen auch so geklappt)
Quality: Numerisch, I16, Wert
IsWritable: Numerisch, U8, Wert

Aber irgendwie scheitere ich an dem Variant Datentyp. Ich hab es schon versucht mit:


- An Typ anpassen + Handles durch Wert
- An Typ anpassen + Zeiger in Handles
- -"- + Array Datenzeiger

Aber Labview stürzt jedesmal komplett ab.
Hat jemand eine Idee, wie man diesen Datentyp richtig übergibt?


Gruß
Basti


RE: Variant Datentyp bei C++ dll - rolfk - 10.02.2012 21:30

Wahrscheinlich geht es in LabVIEW nicht. LabVIEW hat zwar einen Variant Datentypen und die Call Library Node erlaubt sogar einen solchen Typen explizit zu konfigurieren (ActiveX, Pointer to Variant) aber das ist eben ein Pointer auf eine Variant und nicht eine Variant by Value. Variant by Value ist aber was Deine Funktion will (ziemlich dumm eigentlich aber was solls) und diese Möglichkeit hat die LabVIEW CLN Konfiguration nicht.