Zitat von
Mazel:
Definiert ist sie, nur kommt bei mir kein Name am Ende heraus: (habe ich beim suchen gefunden)
Delphi-Quellcode:
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var p: PChar;
begin
p:=StrAlloc(150);
If GetKeyNameText(16, p, SizeOf(p)) > 0 then Edit1.Text:=StrPas(p);
end;
Als Dritter Parameter wird die verfügbare Länge erwartet. Du übergibst aber die Größe von PChar. Und PChar ist nur ein Pointer womit die Größe bei dir nur 4 wäre. Wenn du mit StrAlloc, 150 zeischen reservierst schreib die 150 doch statich rein.