Delphi Tips&Tricks News   Tips   .NET Software   VCL Software   Search   Contacts
Ultimate Pack - special offer!

Ultimate Pack  hot!
Image Editor  new!
Runtime Fusion
Form Designer
Object Inspector
Print Suite Pro
Commented Image
Delphi Toys
WinDowse
Delphi Bonus
TMS Scripter Studio
Form Designer VB
Form Designer .NET

...get more...
for Delphi.NET, C#, VB.NET
for Delphi VCL, BCB 3-6

WinAPI Online
Unix Manual Pages
MegaDetailed.NET
in3steps.com
cdtrrracks.com new!

Blogspot  greatis.blogspot.com

Detect list of loaded programs - System info - Tips & Tricks - Greatis Delphi Pages

We will find all windows, but if window is invisible or it hasn't a caption or it is a MDI-Child then, we won't show this window.


procedure TForm1.Button1Click(Sender: TObject);
var
  Wnd: hWnd;
  Buff: array [0..127] of Char;
begin
  ListBox1.Clear;
  Wnd:=GetWindow(Handle, gw_HWndFirst);
  while Wnd<>0 do
  begin
    if (Wnd<>Application.Handle) and
      IsWindowVisible(Wnd) and
      (GetWindow(Wnd, gw_Owner)=0) and
      (GetWindowText(Wnd, Buff, sizeof(buff))<>0) then
    begin
      GetWindowText(Wnd, Buff, SizeOf(Buff));
      ListBox1.Items.Add(StrPas(Buff));
    end;
    Wnd:=GetWindow(Wnd, gw_hWndNext);
  end;
  ListBox1.ItemIndex:=0;
end;
For more
Win32 Programmer's Reference

Download source