Hallo Leute,
ich habe mir eine DLL gebastelt. Dort habe ich eine Funktion, die so definiert ist:
also mache ich am Ende ein return s_result;
Dann in meiner Testapplikation gibt es so was
Das Problem ist, dass die DLL mir nur den aller ersten Buchstaben liefert, und nicht den kompletten String. Habe auch schon mal mit char* versucht, leider mit gleichem Ergebnis.
Was könnte es sein? Was mache ich hier falsch?
p.s.(ich sage vorerst nicht, dass ich mithilfe der DLL später in VB den String haben möchte. Das ist noch der Hundekot....)
ich habe mir eine DLL gebastelt. Dort habe ich eine Funktion, die so definiert ist:
Code:
__declspec( dllexport ) CString __stdcall GetSerialNumber(char* ch_port, char* ch_ID_Nr)
{...}
Dann in meiner Testapplikation gibt es so was
Code:
typedef CString (*DLLFUNCTION1PROC)(char*, char*);
...
HMODULE hMyDLL = LoadLibrary("gibstring.dll");
DLLFUNCTION1PROC call_GetSerialNumber = NULL;
if (hFARGOMifare != NULL)
{
call_GetSerialNumber = (DLLFUNCTION1PROC)GetProcAddress(hMyDLL , "GetSerialNumber");
AfxMessageBox(call_GetSerialNumber("COM1", "123456"));
}
Das Problem ist, dass die DLL mir nur den aller ersten Buchstaben liefert, und nicht den kompletten String. Habe auch schon mal mit char* versucht, leider mit gleichem Ergebnis.
Was könnte es sein? Was mache ich hier falsch?
p.s.(ich sage vorerst nicht, dass ich mithilfe der DLL später in VB den String haben möchte. Das ist noch der Hundekot....)