Hallo,
beim Aufruf der DLL kommt es immer wieder zu Abstürzen von LabVIEW, auch wenn ich gar nicht im Debug-Modus bin, sondern Linien im Diagramm ziehe. C++ fügt am Ende eines Strings 0x00 an, um das Ende auch anzukündigen. LabVIEW teilt Funktionen die Länge des Strings am Anfang mit. Da ein String ja ein Array aus charctern ist, dachte ich, so wie im Bild würds gehn. Aber es hilft nicht wirklich. Ich dachte, so kann ich den Array künstlich größer machen bzw. Felder im Array initialisieren, aber mit nichts füllen. Damit wäre dann der Array größer (nicht der String, die Leerzeichen haben die Länge 0) und es wäre genug Puffer für die DLL vorhanden.
Gibts da eine bessere Lösung?
Variablen in der DLL:
Startwert = unsigned short int (ist auch Ergebnis)
Command = char *
Länge = unsigned short int
Aufrufkonvention: C