LabVIEWForum.de - DLL soll String zurückgeben

LabVIEWForum.de

Normale Version: DLL soll String zurückgeben
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seit Stunden hänge ich an einem Problem. Ich hoffe ihr könnt mir da weiterhelfen...
Ich habe eine DLL geschrieben, der mir einen char-Array an LabVIEW zurückgeben soll.
Die Größe des char-Array ist von einem Parameter x abhängig, der vom LabVIEW aus eingegeben wird.

Das Problem ist folgendes. LabVIEW erhält nur ein Zeichen und die ist "1";
Normal müsste er wenn der eingegebene Parameter x = 1 lautet, 27 Zeichen zürückgeben.
Macht er aber nicht.

Meine Funktion lautet:
[code]static char partbuf[40];
static char ergbuf[300]

__declspec(dllexport)
char *func(int x)
{
Guten morgen,..

also erster Fehler: so früh arbeitet man noch nicht,.. Zweitens: kannst du evtl. mal die fertige *.dll und dein LabVIEW-VI hochladen damit man was zum spielen hat?

LG
Torsten


-_-
' schrieb:Guten morgen,..

also erster Fehler: so früh arbeitet man noch nicht,.. Zweitens: kannst du evtl. mal die fertige *.dll und dein LabVIEW-VI hochladen damit man was zum spielen hat?

LG
Torsten
-_-


Hallo,
Also ich sende mal die fertige Bibliothek und das C-Programm zu, woraus die DLL gebildet wurde. Ich habe die DLL über LabVIEW-Assistenten importieren lassen.
Es wäre super wenn eine Lösung gefunden werden könnte.

Vielen Dank im voraus

Lg
Yesim
Lv85_img
Offtopic2

Profil_ergaenzen, offenbar hast du Zugriff aufLv85_img

Bitte mal LVF-Regeln lesen, vor allem Punkt 2.

MfG, Jens
' schrieb:Offtopic2

Profil_ergaenzen, offenbar hast du Zugriff aufLv85_img

Bitte mal LVF-Regeln lesen, vor allem Punkt 2.

MfG, Jens

mmmh die Antwort hilft mir leider nicht weiter...ich kriege das problem nicht raus...
Ich habe das Prog zwar nicht heruntergeladen, aber ich vermute du übergibst dem DLL ein leeres Array, damit DLL seine Daten dorthin schreiben kann. Dieses Array musst du mit Zeichen auffüllen, damit der Speicher allokiert wird und die DLL die Möglichkeit hat in diesen Speicher Daten reinzuschreiben.
' schrieb:Ich habe das Prog zwar nicht heruntergeladen, aber ich vermute du übergibst dem DLL ein leeres Array, damit DLL seine Daten dorthin schreiben kann. Dieses Array musst du mit Zeichen auffüllen, damit der Speicher allokiert wird und die DLL die Möglichkeit hat in diesen Speicher Daten reinzuschreiben.


Hallo,

ich habe das Problem gelöst...
Ich musste nur dafür sorgen, dass die TeilStringKetten, woraus die HauptStringkette gebildet wird, keinen '' am Ende haben.
In der Konfiguration "Call Library Function" konnte ich den Rückgabewert als "C String Pointer" konfigurieren.
Zeit zum Entspannen Badewanne_2_2


Vielen Dank für die, die sich drum bemüht haben.

mfg
yesim
' schrieb:Zeit zum Entspannen Badewanne_2_2

Stimmt, du hast ca. 20 Stunden nicht geschlafen:

Erster Post = 06:27
Letzter Post = 03:05

Gruß
Referenz-URLs