Einzelnen Beitrag anzeigen

R2009

Registriert seit: 9. Mär 2009
Ort: Heidelberg
440 Beiträge
 
Delphi 2007 Professional
 
#1

message kommt im Fenster nicht an

  Alt 8. Jan 2010, 07:46
Hi,

In memo1 stehen die Handles aller Fenster der Applikation. Ich versuche an all diese Fenster eine Message zu schicken.
Nur kommt sie da nie an.
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var i:integer;
begin //cardinal(memo1.lines.Strings[i])
  for i:=0 to 1 do SendMessage(cardinal(memo1.lines.Strings[i]),SET_LNG_CMD,0,0);
end;
Hab ich mit dieser Funktion ermittelt:
Delphi-Quellcode:
function EnumWinx(hWnd: THandle; ProcID: PCardinal): Boolean; stdcall;
var
  WinProcId: cardinal;
  Text: AnsiString;
begin
  Result := True;
  if IsWindowVisible(hWnd) then
  begin
    GetWindowThreadProcessID(hWnd, WinProcId);
    if ProcID^ = WinProcId then
    begin
      form1.memo1.lines.add(inttostr(hwnd));
    end;
  end;
end;
Abgefangen werden die messages, in der jeweiligen Form mit:
Delphi-Quellcode:
const
  SET_LNG_CMD = WM_USER+2;
.....

procedure TForm1.GetMessages(var msg: TMsg; var handled: boolean);
begin
  if msg.message = SET_LNG_CMD then
  begin
    ......
    handled:=true;
  end;
end;
Was mach ich falsch? Warum kommt die Message nicht an?


Grüsse
Rainer
Rainer Unger
Mein Profil:
Studium Allgemeine Elektrotechnik TH Darmstadt
Entwicklung von Tools für die Rundsteuer und Zählertechnik.
uP's Atmel Prozessoren (ATmega16,32,88...) in C und Assembler.
  Mit Zitat antworten Zitat