Dieses Standardverhalten stört mich auch sehr. Ich stimme Microsoft zu, dass es wahrscheinlich eine gute Idee war, für die meisten Benutzer standardmäßig "Nur Benachrichtigungen anzeigen" zu verwenden. Der "Benachrichtigungsbereich" dient (wie der Name schon sagt) dazu, den Benutzern Benachrichtigungen anzuzeigen. Es sollte KEIN Ort sein, an dem Unternehmen ungewöhnliche Symbole platzieren, die für ihre Programme "werben", aber nichts tun.
Davon abgesehen habe ich als Power-User eine gute Vorstellung davon, welche Tray-Icons für mich wichtig sind und welche ich lieber ausblenden möchte. Ich würde es vorziehen, wenn die Symbole standardmäßig immer angezeigt werden, aber mit der Möglichkeit, einzelne manuell auszublenden, wie es das OP verlangt hat. Viele Taskleistensymbole bieten nicht nur Benachrichtigungen, sondern auch Echtzeitstatus und schnellen Zugriff auf Einstellungen und Steuerelemente usw. Daher bin ich enttäuscht über das Fehlen einer Einstellung (auch in der Registrierung), die das Verhalten für neue Benachrichtigungssymbole zulässt Standardmäßig "Symbol und Benachrichtigungen anzeigen".
Ich konnte eine solche Einstellung nicht finden. Der oben von James erwähnte Registrierungsschlüssel ist wahrscheinlich nicht nützlich. Zum einen liegt es darunter HKLM
, was eine maschinenweite Einstellung ist. Das Verhalten der Taskleistensymbole ist jedoch benutzerspezifisch, es gibt jedoch keine HKCU
Entsprechung für diesen Schlüssel.
Der entsprechende Registrierungsschlüssel befindet sich tatsächlich HKCU\Software\Classes\Local Settings\Microsoft\Windows\CurrentVersion\TrayNotify
im IconStreams
Wert. Dieser Schlüssel ist ein binärer Registrierungsschlüssel. Es enthält mehrere Datenblöcke, in denen der vollständige Pfad zu ausführbaren Dateien gespeichert ist, für die Benachrichtigungssymbole hinzugefügt wurden, sowie der letzte Tooltip, der von jedem Symbol angezeigt wird, und die Einstellung "show" für jedes Symbol.
Obwohl ich keine Möglichkeit gefunden habe, das Standardverhalten für neue Symbole zu ändern , konnte ich einige gute Referenzen finden, um das Binärformat des obigen Registrierungsschlüssels zu entschlüsseln oder auf dieselben Informationen mit (undokumentiert) zuzugreifen ) ITrayIcon
Schnittstelle. Mit diesen Methoden wurden Dienstprogramme erstellt, mit denen das Verhalten einzelner Taskleistensymbole programmgesteuert erkannt und geändert werden kann.
Da programmgesteuerter Zugriff auf diese Informationen verfügbar ist, sollte es nicht schwierig sein, ein kleines Hilfsprogramm zu schreiben, das die Liste der Taskleistensymbole regelmäßig überwacht und das Verhalten aller neuen erkannten Symbole ändert. Danach zeichnete es den Namen des Symbols auf und änderte ihn nicht erneut, sodass alle Änderungen, die der Benutzer manuell vornimmt, nicht überschrieben wurden.
Hier einige Codebeispiele zum Erkennen und Ändern des Verhaltens einzelner Taskleistensymbole:
In beiden Beispielen werden die Aufgaben beschrieben, die zum Erstellen eines kleinen Dienstprogramms zum Überwachen und Ändern des Verhaltens neuer Benachrichtigungssymbole erforderlich sind. Wenn ich irgendwann dazu komme, dieses Dienstprogramm zu schreiben, werde ich es hier zurück posten.