![]() |
CreateDesktop, SwitchDesktop, ...
Ich habe ein der Win32-SDK gelesen, man könne mit CreateDesktop einen neuen Desktop erstellen, mit SwitchDesktop auf einen anderen Desktop wechseln, ich glaube, mit OpenDesktop öffnet man einen solchen. Aber wozu sind diese Funktionen alle gut? Kann mir jemand genauer erklären, wie sie funktionieren?
Danke. |
Re: CreateDesktop, SwitchDesktop, ...
Ich weiß es nicht genau, aber ich könnte mir vorstellen, dass es so ist wie unter Linux mir den 4 Desktops...
|
Re: CreateDesktop, SwitchDesktop, ...
Aber was genau machen die Funktionen, und wofür braucht man sie?
|
Re: CreateDesktop, SwitchDesktop, ...
wenn du ctrl+alt+del drueckst wechselt winlogon in einen (secured) desktop. Eine Window Station besteht aus mehreren desktops, Fenster handles etc gehoeren zu einer Window station, d.h. die fenster handles sind in allen desktops einer window station gueltig. Ein prozess kann (wenn es ein gui programm ist) einer Window Station zugeordnet werden, in der seine handles (also fenster, menues, ... - nicht aber gdi handles wie pens und brushes) und objekte erstellt werden sollen. Da ja jeder Prozess aus mind. 1 thread besteht, kann man einem Thread einen Desktop in der Window Station zuordnen. Wenn jetzt dein Programm (also dein Hauptthread im Programm) ein Fenster erstellt, wird es in dem Desktop erstellt dem der Thread zugeordnet ist. ein Desktop ist eben sozusagen ein "bildschirm" in dem Fenster angeordnet werden koennen - und diese werden von einer window station (also einem "fenstermanager") verwaltet. Den Zugriff auf Handles die Threads gehoeren die in einem anderen Desktop sind, ist nur moeglich wenn entsprechende Zugriffsrechte auf diesen Desktop (und window station) bestehen - deswegen hat man beispielsweise keinen Zugriff auf die secured Desktops ;)
Sorry fuer die daemliche erklaerung, weiss nicht wie ich es besser erklaeren soll ;) |
Re: CreateDesktop, SwitchDesktop, ...
Kennt jemand ein Tuturial, das die benutzung dieser FUnktionen ausführlich beschreibt? w3seeks's Erklärung hätte nicht unbedingt sein müssen (@w3s: Mach dir nichts draus, aber das wusste ich schon vorher. ;)), aber ein wenig geholfen hat es schon. Trotzdem weiss ich immer noch nicht, wie man diese FUnktionen konkret benutzt...
|
Re: CreateDesktop, SwitchDesktop, ...
![]() Oder das Vorgängerbuch "Programming Windows Security" Das Problem ist übrigens nicht annähernd so trivial wie es sich in w3seeks Beschreibung anhört. Du brauchst mindestens einen Helferservice. Falls du Interesse hast sowas zu benutzen, empfehle ich ![]() |
Re: CreateDesktop, SwitchDesktop, ...
Eigentlich wollte ich nur einen Desktop-Switcher programmieren, wie er bei Linux/KDE standardmäßig dabei ist... :gruebel: Trotzdem Danke!
|
Re: CreateDesktop, SwitchDesktop, ...
Sowas habsch mir auch schonmal überlegt, aber wozu das Rad neu erfinden:
![]() ![]() Ist halt nur für XP Aber letztendlich läuft das imho so, dass kein neuer Desktop erzeugt wird, sondern lediglich die Fenster in verschiedenen virtuellen Desktops angezeigt werden können und jeder virt. Desktop ein anderes Hintergrundbild haben kann. Zitat:
Gruß Stephan edit: Teppfihler |
Re: CreateDesktop, SwitchDesktop, ...
Zitat:
|
Re: CreateDesktop, SwitchDesktop, ...
für alle nicht xp user die auch gerne multiple desktops haben wollen empfehle ich:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz