finde kørende programmer i taskbar og notifytray
Jeg går til ekstremerne og tager kampen op for at lave min egen taskbar..Derfor vil jeg høre om der er nogle seje gutter der kan hjælpe mig på vej med to følgende ting:
Jeg skal naturligvis vide hvilke programmer der kører og hvornår de lukkes igen, så jeg kan have en opdateret proceslinje.
Borrisholt har engang skrevet følgende stump kode, som egenlig gør tricket, men den skal køres manuelt, og der skal med andre ord bygges noget overvågning ind i den, således at den holder sig selv opdateret:
Function EnumProc( wnd: HWND; Memo : TMemo ): BOOL; stdcall;
Var
buf, caption: Array [0..255] of char;
Flags : Longint;
Begin
result := True;
Flags := GetWindowLong(wnd, GWL_STYLE);
if (Flags and WS_VISIBLE <> 0) and (Flags and WS_SYSMENU <> 0) and (Flags and WS_POPUP = 0)then
begin
GetClassname( wnd, buf, 256 );
SendMessage( wnd, WM_GETTEXT, 256, integer(@caption));
Memo.Lines.Add(Format(\'Caption : %s Classname : %s\',[caption, buf]));
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Clear;
EnumWindows( @EnumProc, integer( Memo1 ));
end;
Så er der notify tray iconerne.. Dem må man også kunne fange og det tror jeg heller ikke er det store problem, men det er nok mere besværligt at overvåge om de ændre sig, forsvinder eller om der kommer nye til..
Håber der er en en masse med nogle gode ideér til dette projekt.
