Thema: Delphi WM_GETTEXT + Unicode

Einzelnen Beitrag anzeigen

Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#3

Re: WM_GETTEXT + Unicode

  Alt 22. Okt 2004, 08:57
So, habe mal ein wenig herumprobiert.
Wenn ich TextLength * 4 funktioniert's.
Stimmt's etwa so oder gibt's noch was anderes zu beachten?

Delphi-Quellcode:
function GetWindowText(wnd: HWND): WideString;
var
  TextLength: Integer;
  Text: PWideChar;
begin
  Result := '';
  if wnd = 0 then
    Exit;
  TextLength := SendMessageW(wnd, WM_GETTEXTLENGTH, 0, 0);
  if TextLength <> 0 then
  begin
    GetMem(Text, TextLength * 2 + 1);
    SendMessageW(wnd, WM_GETTEXT, TextLength + 1, Integer(Text));
    Result := Text;
    FreeMem(Text);
  end;
end;
Thomas
  Mit Zitat antworten Zitat