Hallo,
ich spreche über eine Treiber-DLL einen Transientenrekorder an. Wenn ich die DLL Funktion ohne Verbindung zum Transientenrekorder aufrufe läuft diese problemlos ab. Sobald ich aber Verbindung habe wird LabVIEW sobald es an diesem Knoten angelangt ist beendet. Was könnte hier der Fehler sein?
Hast Du denn eine genaue Beschreibung der DDL-Funktionen?
LabVIEW ist im allgemeinen fehlertolerant bis zum geht nicht mehr, aber bei DLLs hört der Spaß auf. Du muß ganz genau wissen, welche Variablen in welchem Format übergeben und rückgegeben werden. Wenn Du dabei den geringsten Fehler machst, stürzt LabVIEW ab. Vielleicht kommen ohne Recorder keine Werte zurück, und deshalb scheint alles OK. Wenn die Werte aber bei angeschlossenem Recorder zurückkommen, dann haben sie vielleicht ein anderes Format als erwartet, und LV steigt aus. - Das ist natürlich alles reine Spekulation, aber mehr kann man glaube ich bei diesem Informationsstand nicht sagen.
Ludwig
Ich habe die Header-Datei und eine Beschreibung der Strukturdatentypen. Der Fehler war, dass ich die Struktur in der Wrapperfunktion nicht als Zeiger deklarieren darf. Da LabVIEW dann anscheinend große Probleme bekommt. Wenn man die Struktur ganz normal aufruft und mit dem &-Operator als Adresse der Funktion übergibt. Funktioniert es ohne abzustürzen.