Einzelnen Beitrag anzeigen

Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Programme aus der Taskleiste aufrufen?

  Alt 7. Apr 2007, 20:00
Zitat von smart:
Wie komme ich an das Handle?
Bei deinem Problem würde sich wohl EnumWindows() anbieten:
Delphi-Quellcode:
function EnumWin(hWnd: THandle; FindWin: PString): Boolean; stdcall;
var
  WinText: AnsiString;
begin
  Result := True;
  if IsWindowVisible(hWnd) and not boolean(GetWindowLong(hWnd, GWL_HWNDPARENT)) then
  begin
    SetLength(WinText, SendMessage(hWnd, WM_GETTEXTLENGTH, 0, 0));
    SendMessage(hWnd, WM_GETTEXT, Length(WinText)+ 1, integer(WinText));
    if (length(WinText)> 0) and (WinText <> 'Program Manager') then
    begin
      if IsIconic(hWnd) then//ist das Fenster minimiert
        if WintExt = FindWin^ then//DEMO
          ShowWindow(hWnd, SW_RESTORE);//SW_MAXIMIZE
      //Form1.ListBox1.Items.Add(WinText);
    end;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  FindWin: String;
begin
  FindWin:= 'Unbenannt - Editor';
  EnumWindows(@EnumWin, integer(@FindWin));
end;
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat