AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Aus Taskbar ausblenden

Ein Thema von sakura · begonnen am 21. Dez 2002 · letzter Beitrag vom 29. Nov 2003
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von hm988
hm988

Registriert seit: 20. Dez 2002
132 Beiträge
 
Delphi 7 Personal
 
#11

Re: Aus Taskbar ausblenden

  Alt 15. Sep 2003, 22:16
danke für die schnelle antwort, ja will ja nicht den Service selbst verstecken sondern nur das Formular das taucht nämlich auch als Anwendung auf aber wieso eigentlich ??
Dürfte doch nur be Prozesse sichtbar sein

mein Formular hat keinen Formularkopf, dadurch war es auch als exe nicht als Anwendung sondern nur als Prozess sichtbar das würde mir schon langen ( der Formularkopf muss aber wegbleiben )

hast du eine idee ?
  Mit Zitat antworten Zitat
Benutzerbild von CrashMan
CrashMan

Registriert seit: 1. Aug 2003
Ort: //127.0.0.1/
65 Beiträge
 
Delphi 6 Personal
 
#12

Re: Aus Taskbar ausblenden

  Alt 15. Sep 2003, 22:30
Logisch das das noch unter Anwendungen aufgeführt wird...es ist ja noch da nur "unsichtbar" in der taskleiste...!

Versuchs mal mit Form1.Hide und Form1.Show !

CrashMan
  Mit Zitat antworten Zitat
Benutzerbild von hm988
hm988

Registriert seit: 20. Dez 2002
132 Beiträge
 
Delphi 7 Personal
 
#13

Re: Aus Taskbar ausblenden

  Alt 15. Sep 2003, 22:38


glaube habe mich falsch ausgedrückt, ich will natürlich nicht das Formular selbst sondern nur den Eintrag im Taskmanager für Anwendung ausblenden der ja bei einem Dienst garnicht da sein dürfte. oder wie ??

Steve
  Mit Zitat antworten Zitat
ddcool

Registriert seit: 8. Jun 2003
146 Beiträge
 
Delphi XE2 Architect
 
#14

Re: Aus Taskbar ausblenden

  Alt 5. Nov 2003, 14:24
Hi, ich habe ne viel leichtere Lösung, nämlich die Komponente:

"CoolTrayIcon" (hier der Link Delphi32.com CoolTrayIcon )

, mit der man ein Icon, oder Text als TrayIcon anzeigen lassen kann. Integriert in dieser Komponente ist auch das Ereignis "HideMainForm".

Greez Basti aka ddcool
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#15

Re: Aus Taskbar ausblenden

  Alt 5. Nov 2003, 14:38
Zitat von sakura:
Wie kann ich den Button meiner Application, bzw. eines Forms aus der Taskbar verstecken
Mal generell die Frage: Hat schon mal jemand mit dem ITaskbarList-Interface gearbeitet? Das bietet u.a. die Funktion "DeleteTab"
Zitat von PSDK:
Deletes an item from the taskbar.
Code:
HRESULT DeleteTab(
          HWND hwnd
);
Also, ich hab´s noch nicht probiert. Aber vielleicht wäre das einfacher Weg, ohne dass man in den Fensterstilen rumfummeln müsste Das Interface benötigt laut PSDK min. den IE4. Ich denke, diese Bedingung müsste auf über 90% der Windows-Rechner erfüllt sein.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#16

Re: Aus Taskbar ausblenden

  Alt 5. Nov 2003, 16:47
Ein ToolWindow erscheint auch nicht in der Taskbar.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
DaFox

Registriert seit: 1. Aug 2003
Ort: Kippenheim
90 Beiträge
 
#17

Re: Aus Taskbar ausblenden

  Alt 5. Nov 2003, 19:25
Hi,

Zitat von MathiasSimmack:
Mal generell die Frage: Hat schon mal jemand mit dem ITaskbarList-Interface gearbeitet?
Ja, aber ich bin damit nicht glücklich geworden...
Hier mal ein bisschen Code aus meiner eigenen CodeLibrary :

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;

implementation

procedure TForm1.Button1Click(Sender: TObject);
const
  CLSID_TaskBarList: TGUID ='{56FDF344-FD6D-11D0-958A-006097C9A090}';
  IID_ITaskBarList: TGUID ='{56FDF342-FD6D-11D0-958A-006097C9A090}';
var
  FTaskbarList: ITaskBarList;
  Wnd: hWnd;
begin
  Wnd := FindWindow('IEFrame',nil);
  if (Wnd <> 0) then
  begin
     FTaskbarList := CreateComObject(CLSID_TaskbarList) as ITaskbarList;
     FTaskbarList.HrInit;
     FTaskbarList.HrInit;
     FTaskbarList.DeleteTab(Wnd);
  end;
end;
Gruß,
Markus
  Mit Zitat antworten Zitat
Benutzerbild von Logic
Logic

Registriert seit: 28. Nov 2003
132 Beiträge
 
Delphi 7 Personal
 
#18
  Alt 28. Nov 2003, 20:00
____hat sich erledigt____
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#19

Re: Aus Taskbar ausblenden

  Alt 28. Nov 2003, 22:26
Zitat von DaFox:
Zitat von MathiasSimmack:
Mal generell die Frage: Hat schon mal jemand mit dem ITaskbarList-Interface gearbeitet?
Ja, aber ich bin damit nicht glücklich geworden...
Wieso nicht?
Der Eintrag vom IE verschwindet anstandslos. Getestet unter Win98.

Problematisch wird´s nur bei der VCL. Das folgende Beispiel geht davon aus, dass man eine Form namens "TForm1" hat, und es funktioniert nicht:
Wnd := FindWindow('TForm1',nil); Damit verschwindet das eigene Fenster nicht.

Und wieso nicht?
Weil bei VCL-Programmen nicht die Form sondern das TApplication-Objekt für den Eintrag in der Taskbar verantwortlich ist. Korrekt wäre also:
Delphi-Quellcode:
Wnd := findwindow('TApplication',nil);

if (Wnd <> 0) then
begin
  FTaskbarList := CreateComObject(CLSID_TaskbarList) as ITaskbarList;
  FTaskbarList.HrInit;
  FTaskbarList.DeleteTab(Wnd);
end;
und -schwupps!- ist der Taskbar-Eintrag verschwunden ... ohne dass man in den Fensterstilen rumfummeln muss. Wenn allerdings noch ein zweites VCL-Programm läuft, wird´s schon wieder schwierig. In dem Fall muss man also gezielt nach dem Buttontitel suchen, etwa
Wnd := findwindow('TApplication','Project1'); unter der Voraussetzung, das eben "Project1" auf dem Taskbar-Button steht.

Mit
  FTaskbarList.ActivateTab(Wnd); anstelle von "DeleteTab" kann man den Button übrigens wieder sichtbar machen. Aber mehr verrät dazu, wie immer!, das PSDK.

@DaFox: Dein Code kann ein bisschen aufgeräumt werden. Die lokale GUID im Button-Klick kann weggelassen werden, weil sie ja bereits global deklariert ist, und einmal
FTaskbarList.HrInit; hat bei mir gereicht.
  Mit Zitat antworten Zitat
DaFox

Registriert seit: 1. Aug 2003
Ort: Kippenheim
90 Beiträge
 
#20

Re: Aus Taskbar ausblenden

  Alt 29. Nov 2003, 02:01
Hi Mathias,

Zitat von MathiasSimmack:
Wieso nicht?
Der Eintrag vom IE verschwindet anstandslos. Getestet unter Win98.
weil ich damals ein anderes Ziel verfolgte. Natürlich verschwindet der Eintrag vom IE anstandslos (auch unter anderen Versionen als Windows 98 ), aber nun minimiere mal das IE-Fenster - schwupps! - der Taskbarbutton ist wieder da. Das heißt, dass Du also auf verschiedene Messages des (fremden) Fensters reagieren müsstest um den Button immer wieder aus der Taskbar zu entfernen. Oder eben (noch schlimmer) du suchst nach dem ungeliebten Button in der Taskbar per Polling. Natürlich, wenn es um den eigenen Taskbarbutton geht dann ist das alles kein Problem; bei mir ging es aber um einen eines fremden Fensters.

Zitat von MathiasSimmack:
@DaFox: Dein Code kann ein bisschen aufgeräumt werden. Die lokale GUID im Button-Klick kann weggelassen werden, weil sie ja bereits global deklariert ist, und einmal
FTaskbarList.HrInit; hat bei mir gereicht.
Ja, zweimal initialisieren brauchst nicht, das ist nur blödsinnigerweise reingerutscht, sorry. Zur lokalen GUID: Da sieht man, dass ich nur einen Abend damit experimentiert habe, danach rutschte das Ding in meine CodeLib und verstaubt seit dem. Ich habe mir damals selbst was gebastelt (bzw. bastle immernoch daran ) um einen x-beliebigen Taskbarbutton zu entfernen - und zwar dauerhaft.

Gruß,
Markus
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz