Thema: Delphi Window Handle

Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#16

Re: Window Handle

  Alt 23. Jun 2006, 13:14
Es gruselt mich. Habt ihr mal im MSDN geschaut wie die Parameter für wm_gettext lauten? Anstelle des Pointers auf den Buffer übergebt Ihr 0, und anstelle der maximal möglichen Länge des Buffers übergebt ihr die Adresse von Memo1.text.
Da "Text" ein Property ist geht derdirekte zugriff gar nicht sondern es muss auf eine zwischenvariable
MSDN-Library durchsuchenwm_gettext
Ihr könnt aber auch gleich die Funktion GetWindowText nehmen, da haben die Parameter schon die richtigen Namen so das es dort einleuchtender sein sollte was ihr bisher falsch gemacht habt.

[Edit]
Delphi-Quellcode:
var lBuffer: String;
    lSize : Integer;
begin
  SetLength(lBuffer, 255);
  lSize := GetWindowText(Handle, @lBuffer[1], Length(lBuffer));
  Memo1.Text := copy(lBuffer, 1, lSize);
wenn du unbedingt SendMessage verwenden willst dann so:
Delphi-Quellcode:
var lBuffer: String;
    lSize : Integer;
begin
  SetLength(lBuffer, 255);
  lSize := SendMessage(Handle, WM_GETTEXT, Length(lBuffer), Integer(@lBuffer[1]));
  Memo1.Text := copy(lBuffer, 1, lSize);
[/Edit]
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat