Fenster anzeigen, aber von TaskBar verstecken

Für allgemeine Fragen zur Programmierung mit PureBasic.
spider84
Beiträge: 76
Registriert: 05.03.2008 03:06

Fenster anzeigen, aber von TaskBar verstecken

Beitrag von spider84 »

Wie verstecke ich mein Programm von der Taskbar ohne das Fenster selbst mit den Gadgets zu verstecken.
Hintergrund ist der, dass ich Gadgets im SysTray selbst platziere, aber dann in der TaskBar dann leere Anzeigen habe
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Suchfunktion kaputt?

Code: Alles auswählen

Procedure HideFromTaskBar(hWnd.l, Flag.l)
  Protected TBL.ITaskbarList

  CoInitialize_(0)
  If CoCreateInstance_(?CLSID_TaskBarList, 0, 1, ?IID_ITaskBarList, @TBL) = #S_OK
    TBL\HrInit()
    If Flag
      TBL\DeleteTab(hWnd)
    Else
      TBL\AddTab(hWnd)
    EndIf
    TBL\Release()
  EndIf
  CoUninitialize_()
 
  DataSection
    CLSID_TaskBarList:
    Data.l $56FDF344
    Data.w $FD6D, $11D0
    Data.b $95, $8A, $00, $60, $97, $C9, $A0, $90
    IID_ITaskBarList:
    Data.l $56FDF342
    Data.w $FD6D, $11D0
    Data.b $95, $8A, $00, $60, $97, $C9, $A0, $90
  EndDataSection
EndProcedure
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

Edel hat geschrieben:Suchfunktion kaputt?
:mrgreen:

Code: Alles auswählen

If OpenWindow(0,0,0, 200,200,"", #PB_Window_Invisible)
  If OpenWindow(1,0,0,300,300, "", #PB_Window_SystemMenu, WindowID(0))
  EndIf
EndIf
Repeat:WaitWindowEvent():ForEver


Edit:
TS-Soft hat geschrieben:Suchfunktion kaputt?
:mrgreen:

@TS-Soft: :o
Zuletzt geändert von marco2007 am 10.08.2008 21:39, insgesamt 1-mal geändert.
Windows 11 - PB 6.03 x64
_________________________________
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

Wieso sind die Codes so kompliziert?
spider84 hat geschrieben:Wie verstecke ich mein Programm von der Taskbar
Windows 11 - PB 6.03 x64
_________________________________
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@marco2006
Die Codes sind doch nicht kompliziert :wink:

@spider84
Oder (Alternative):

Code: Alles auswählen

If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_Invisible)
  SetWindowLong_(WindowID(0),-20,GetWindowLong_(WindowID(0),-20)|#WS_EX_TOOLWINDOW)
  HideWindow(0, 0)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

marco2006 hat geschrieben:Wieso sind die Codes so kompliziert?
spider84 hat geschrieben:Wie verstecke ich mein Programm von der Taskbar
Weil PB kein COM unterstützt?
Weil es garnicht kompliziert ist? (jedenfalls die Anwendung ist doch leicht)
Weil programmieren immer kompliziert ist?

Meiner Meinung nach ist es die einfachste und systemkonformste Lösung :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

Ja, aber mein Code funkt doch auch. Oder habe ich etwas nicht verstanden?
Windows 11 - PB 6.03 x64
_________________________________
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

marco2006 hat geschrieben:Ja, aber mein Code funkt doch auch. Oder habe ich etwas nicht verstanden?
Stimmt, aber warum Speicher für 2 Fenster verbrauchen, ein unnötiges
Handle verbrauchen? Bloß weil man COM nicht versteht?

Verstehste denn Deinen Code? Warum erscheint es nicht in der Taskbar?
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
marco2007
Beiträge: 906
Registriert: 26.10.2006 13:19
Kontaktdaten:

Beitrag von marco2007 »

ok. Ich verstehe. Ich weiß, was Du meinst.

Mit COM komme ich nur mit PureDisphelper einigermaßen klar.
Aber diese CoInitialize + CoCreateInstance + DataSection ist mir derzeit noch zu schräg (ähnlich dem AutoComplete von Freak). Da steige ich aus.
Das hebe ich mir für die kalte Zeit (Herbst + Winter) auf.
Windows 11 - PB 6.03 x64
_________________________________
Antworten