Wenn du einen PChar nimmst, dann solltest du vorher mal Speicher reservieren.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
s: PChar;
begin
GetMem(s, length(Edit1.Text)+1);
try
SendMessage(Edit1.Handle, WM_GETTEXT, length(Edit1.Text)+1, Integer(@s[0]));
ShowMessage(s);
finally
FreeMem(s, length(Edit1.Text)+1);
end;
end;
Und damit du genau weißt, wie viel Speicher du brauchst, guckst du vorher mit
WM_GETTEXTLENGTH wie lang der Text im Edit ist.
Und noch ein heißer Tipp: Lad dir das
PSDK runter:
http://www.microsoft.com/downloads/d...displaylang=en Da kannst du imme rmal schenll die Parameter nachschlagen. Selbst ich weiß nie, wie rum die Parameter bei WM_GETTEXT gehören.
Noch was: Für Dialoge gibt es auch spezielle Dialog-Funktionen, die einem das Leben einfacher machen. Hier wäre das zum Beispiel:
GetDlgItemText.