Habs jetzt so gelöst, aber irgendwie bekomme ich immer nur die ersten 3 Zeichen von der Pfandangabe! Was ist da noch falsch?
Delphi-Quellcode:
procedure GlobalAllocFileName(aWnd: HWND; aText: String);
var
Data: THandle;
DataPtr: Pointer;
Size: Integer;
oldWND: HWND;
begin
Size := Length(aText) + 1;
Data := GlobalAlloc(GMEM_MOVEABLE or GMEM_DDESHARE, Size);
try
DataPtr := GlobalLock(Data);
try
Move(PChar(aText)^, DataPtr^, Size);
PostMessage(aWnd, WM_TSOPLAYFILE, INTEGER(dataptr^), 0)
finally
GlobalUnlock(Data);
end;
except
GlobalFree(Data);
raise;
end;
end;
Den Code hab ich mehr oder weniger hier aus dem Forum!