Comment puis-je trouver quel processus Windows affiche une icône de barre d'état système dans la barre des tâches?Quel processus Windows affiche une icône de barre d'état système dans la barre des tâches?
Répondre
Shell_NotifyIcon fonctionne en envoyant un WM_COPYDATA message to the taskbar spécial, si vous injectez dans l'explorateur et sous-classe la barre des tâches, vous pouvez attraper ce message, vous pouvez alors obtenir le numéro de processus en appelant GetWindowThreadProcessId sur COPYDATAstruct.NOTIFYICONDATA.hwnd.
... et bien sûr, c'est un hack et repose sur des informations non documentées qui pourraient changer à tout moment!
Je ne crois pas que ce soit possible. Certes, Spy ++ signale que la zone de notification est une seule fenêtre nommée "Zone de notification sponsorisée par l'utilisateur". Cette fenêtre est finalement associée à la fenêtre du bureau et n'a aucune association évidente avec le processus qui a créé l'icône de notification.
Eh bien, par possible je veux dire possible sans recourir à des hacks comme Anders suggère qui est sans doute possible, mais pas ce que j'imagine l'OP cherche!
Eh bien, la question est marquée avec le débogage. En arrière dans la journée il y avait un produit nommé TraySaver qui l'a fait, un couple d'articles MS KB même liés à = = – Anders
@Anders je prends la balise de débogage pour signifier que OP essaye de déterminer quel processus parmi les nombreux qui sont courir est celui qui était responsable de l'icône. Si c'était moi, je regarderais la description et le nom de l'entreprise dans Process Explorer et verrais si je pouvais trouver une correspondance. Ensuite, je tuerais le processus et verrais si l'icône disparaissait! –
Je viens de me rendre compte que dans Windows 7, le menu 'Sélectionner les icônes et les notifications qui apparaissent dans la barre des tâches' aide un peu ici. Trouvez-le en faisant un clic droit sur la barre des tâches, allez dans "Propriétés", puis cliquez sur le bouton "Personnaliser ..." dans le cadre "Zone de notification".
Chaque ligne de cette fenêtre représente une icône de la barre des tâches que Windows Explorer a vue. Parmi les deux rwos de gauche, je crois que le premier est la description du processus comme indiqué dans le Gestionnaire des tâches, et le bas est le titre de la fenêtre pour la fenêtre affichant l'icône de la barre des tâches.
Cela m'a aidé à retrouver mon problème original! VisualSVN ouvrait un 'Inscrivez-moi!' nag fenêtre dans la barre d'état système, malgré aucun processus VisualSVN évident en cours d'exécution. Finalement, j'ai remarqué que cette fenêtre nag a disparu lorsque j'ai fermé Visual Studio, il était donc clair que la DLL du complément VisualSVN chargé dans Visual Studio créait la fenêtre Nag.
- 1. Windows 7 Icône de l'application et barre des tâches
- 2. Barre des tâches Windows 7
- 3. Barre de progression de la barre de tâches dans la barre des tâches de Windows 7
- 4. Icône de l'application MFC dans la barre des tâches
- 5. API de la barre des tâches Windows
- 6. Icône de la barre d'état système n'apparaissant pas au démarrage
- 7. Comment faire une application barre des tâches (barre d'état système) dans Windows
- 8. Détection d'une icône de la barre des tâches clignotante
- 9. wxPython Icône de la barre d'état système
- 10. Comment cacher un JFrame dans la barre système de la barre des tâches
- 11. Icône de notification de Facebook dans la barre des tâches de Windows
- 12. Briser la barre des tâches
- 13. Cacher l'application de la barre des tâches
- 14. Application de la barre d'état système Windows
- 15. Où se trouve l'icône de la barre des tâches de l'utilisateur système?
- 16. Comment masquer le formulaire pour que l'application affiche uniquement une icône dans la barre d'état système?
- 17. Windows 7 Widget ou barre d'outils de la barre des tâches
- 18. .NET Barre de progression dans la barre des tâches sous Windows 7
- 19. Icône incorrecte mise à l'échelle dans la barre des tâches d'une application Win32 sous Windows 7
- 20. Barre des tâches Windows hauteur/largeur
- 21. wxPython et barre des tâches Windows 7
- 22. Lancement d'un processus fils et de la barre des tâches de Windows 7
- 23. Intégrer dans la barre des tâches
- 24. Réduire une forme de fenêtre système dans la barre d'état en C# sans la voir suspendue où barre des tâches
- 25. Requis: Une fenêtre contextuelle sans icône de la barre des tâches
- 26. Masquer la fenêtre de la barre des tâches MS Windows
- 27. Icône de la barre système pygtk ne fonctionne pas
- 28. Application d'intégration .NET dans la barre des tâches Windows
- 29. Quelque chose comme la barre des tâches Windows dans C#
- 30. Icônes de la barre des tâches manquantes
Si vous comptez sur des détails d'implémentation non documentés, pourquoi s'embêter? Vous pouvez lire les structures internes directement via TB_GETBUTTON et ReadProcessMemory (http://www.ureader.com/msg/14841415.aspx) – Luke
@Luke: Et cela fonctionnerait-il avec les éléments cachés sur Win7? – Anders
La classe Toolbar prend en charge les boutons cachés, mais je suppose que cela dépend de la façon dont Explorer implémente les icônes cachées (est-ce un bouton caché ou n'y a-t-il aucun bouton?). Un seul moyen de le savoir. – Luke