Moin,
Ich habe in einer
nonVCL Anwendung folgendes Problem, im Code lese ich einen Text von einenm Item ein und möchte ihn wieder auf einen
DC ausgeben.
Wenn ich die länge des Textes mit
length(Text) oder
sizeof(Text) bestimmen will werden alle Zeichen aus dem Puffer geschrieben. Gebe ich die Länge des Textes als Zahl direkt an ist alles ok.
Delphi-Quellcode:
var szText:
Array [0..127]
of Char;
//...
begin
// Text holen
GetWindowText(hwndItem, szText, sizeof(szText));
// Text auf DC ausgeben
ExtTextOut(lpdis.hDC,
(lpdis.rcItem.Right
div 2) - (ts.cx
div 2),
(lpdis.rcItem.Top
div 2) + (ts.cy
div 2),
ETO_CLIPPED, @lpdis.rcItem, szText, length(szText),
nil);
// <---<<<
end;
Mit
length(Text) oder
sizeof(Text) bekomme ich immer die komplette länge des Arrays, also 128.