Einzelnen Beitrag anzeigen

scp

Registriert seit: 31. Okt 2003
1.120 Beiträge
 
Delphi 7 Personal
 
#18

Re: Fenster(Handle) aus Taskleiste entfernen

  Alt 14. Sep 2004, 17:49
Die einzige Möglichkeit wäre, unter Verwendung von Hier im Forum suchenITaskbarList eine Funktion zu basteln und diese anstelle des bei dir eingesetzten ShowWindow() zu verwenden.

Delphi-Quellcode:
uses
  ComObj;

const
  CLSID_TaskbarList: TGUID = '{56FDF344-FD6D-11d0-958A-006097C9A090}';
type
  ITaskbarList = interface
    ['{56FDF342-FD6D-11d0-958A-006097C9A090}']
       function HrInit: HResult; stdcall;
       function AddTab(hwnd: Cardinal): HResult; stdcall;
       function DeleteTab(hwnd: Cardinal): HResult; stdcall;
       function ActivateTab(hwnd: Cardinal): HResult; stdcall;
       function SetActiveAlt(hwnd: Cardinal): HResult; stdcall;
  end;

function DeleteTabEntry(Wnd: hWnd) : boolean;
const
  IID_ITaskBarList: TGUID ='{56FDF342-FD6D-11D0-958A-006097C9A090}';
var
  FTaskbarList: ITaskBarList;
begin
  result := (Wnd <> 0);
  if result then
  try
    FTaskbarList := CreateComObject(CLSID_TaskbarList) as ITaskbarList;
    FTaskbarList.HrInit;
    result := (FTaskbarList.DeleteTab(Wnd) = S_OK);
  except
    On EOleSysError do
      result := false
    else
      raise;
  end;
end;
  Mit Zitat antworten Zitat