Mit VC++ eine DLL schreiben, die einen String zurück lifert.
-
Hallo,
ich habe folgendes Problem: Ich möchte mit VC++ eine DLL schreiben, die einen String an ein anderes Programm liefert. Wenn ich Zalen an das Programm übergebe, funktioniert das auch ohne Probleme. Aber bei dem String funktioniert nichts.
Wenn mir jemand weiter helfen könnte wäre ich sehr verbunden.
-
Zeig mal wie du zahlen übergibst.
Meinst du da eine Sharedbereich?
-
Die Funktion bekommt die Zahlen aus dem Programm und gibt einfach das Ergebniss zurück.
LONG addieren(LONG a, LONG b) {
return (a + b);
}Nur bei den Strings, da funktioniert das nicht so einfach.
Die Nachvorschungen haben ergeben, dass der String als Longpointer an das Programm übergeben werden soll, oder so. Leider kenn ich mich mit der Speicher-Verwaltung und Pointer nicht so gut aus.
-
also exportierte C Funktion?!
extern "C" char *getString(void) { return "Mein String"; }oder mit wide characters (Unicode)
extern "C" TCHAR *getString(void) { TCHAR *meinString = _T("Hello World!"); return meinString; }wobei ich mal annehme das Du weisst wie Funktionen aus DLL´s "exportiert" werden.
(daher das extern "C")