![]() |
Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win7)
Ich möchte die Eigenschaft eines einzelnen Icons mit eigenem Programm ändern. By default werden Icons mit der Eigenschaft 'Nur Benachrichtigungen anzeigen' eingerichtet. Gibt es eine API Prozedur oder ist was in der Registry zu ändern damit das gewünschte Symbol die Eigenschaft 'Benachrichtigungen und Symbol anzeigen' kriegt.
Die Frage wurde schon Jahre zuvor von Benutzern gestellt aber noch keine passende Antwort hat je ein Forum erreicht. Dass es möglich ist die Eigenschaft nicht nur vom Anwender zu ändern zeigen Icons von Programmen die bereits bei der Installation wie gewünscht eingestellt sind. Als Beispiel sein Nero BackItUp und SoundEffekt genannt. Ich hoffen dass es möglich ist im Forum eine Antwort zu erhalten. Vielen Dank. |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Hast du mal RegMon und FileMon laufen lassen und dann so ein TrayIcon umgestellt?
Wenn was in der Reg oder Datei gespeichert wird, dann bekommst du das mit. Muss ja dann auf jeden Fall erst mal eine per User Einstellung sein. Dann kann man auch schauen ob das Nero TrayIcon eine per User oder globale Einstellung hat ;) |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Code:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\EnableAutoTray
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\EnableAutoTray |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
Vielen Dank für die Antworten. RegMon von Sysinternals heisst für Win7 jetzt 'Process Monitor'. Den zu benutzen habe ich auch gedacht. Zeigt extrem viele Registry Zugriffe und der Durchblick wird dadurch etwas schwierig. Müsste ein cleveres Filter anwenden. HKCU\Software\Microsoft\Windows\CurrentVersion\Exp lorer\EnableAutoTray existiert bei Win7 weder als Key noch als Wert. Vielleicht muss ich ihn selbst erzeugen. Wenn man es so anschaut sieht der Eintrag eher so aus dass er alle unbenutzten Icons anzeigt oder versteckt. Ich brauche es aber für ein einzellnes Icon separat. |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
Code:
HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify\IconStreams
HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify\PastIconsStream |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Nicht alles, was machbar ist, muss auch gemacht werden ;)
Da Du nach der API dazu fragst, schlage ich mal vor, Du beschäftigst Dich mit den Design-Guidelines zu Windows 7. Microsoft möchte nämlich gar nicht, daß Software das einstellt. Wenn Du dann immer noch der Meinung bist, daß Du das machen musst: siehe Unions Info, musst Du halt ein bißchen basteln :) |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
@Union, habe mir die Stream man angeschaut. Mehrere kb gross. Da blicke ich noch nicht durch. Man könnte ruhig experimentieren oder gar die Daten löschen. Bei einem Neustart werden sie neu erzeugt und es hat den Vorteil dass es dann wiede schön aufgeräumt ist. Alle zuvor verwendeten und jetzt nicht mehr benötigten Notifications sind dann entfernt.
@CCRDude, ich bin der Meinung dass sogar was unmachbar scheint gemacht werden soll ;-) Machen wir nicht ab und zu SAchen die MS nicht möchte dass sie gemacht werden? Ja, basteln wäre angesagt. In dem Fall mit kb grossen Daten in der Registry halt ein schwieriges unterfangen. |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Also in dem Stream steckt die Einstellung wie sich das Icon verhalten soll, der Pfad der Anwendung und das Icon selber drin. Die Pfade sind Unicode. Das Konfigurationsbyte liegt 20 Byte vor dem Pfad. 16=Immer zeigen, 17=Nie, 18=Verbergen wenn inaktiv. Leider muss man den Explorer nach einer Änderung neu starten.
|
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
|
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Liste der Anhänge anzeigen (Anzahl: 1)
@netpilots: ich sprach ja nicht davon, was unmachbar scheint, sondern davon, was man nicht machen sollte. Aus reinem technischen Interesse habe ich da nichts gegen!
Das mit dem Konfigurationsbyte hätte ich jetzt spontan anders gesehen, weil meiner Meinung nach jedes Record direkt mit dem Pfad beginnt, ich kann mich aber auch täuschen :) So oder so, siehe mein kleines Testprogramm im Anhang, scheint mir plausible Werte zu liefern. |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
|
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
|
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
|
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Du meinst wohl ab 2006
|
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Liste der Anhänge anzeigen (Anzahl: 1)
Oh, ich glaube Delphi 6 kann das wirklich noch nicht. FreePascal auch nicht, ich erinnere mich jetzt grob... Korrektur im Anhang :)
Jetzt hoffe ich nur, daß Delphi 6 CharInSet kann, sonst muss da halt ein
Delphi-Quellcode:
hin.
Result[i] in LowerCaseChars
|
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
Guckst du in Wikipedia. ![]() |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
|
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Zitat:
Habe ein unicodefähige Rot13 gefunden, jetzt sehe ich was im IconStream steckt. Der Vollständigkeit halber hier noch die Rot13 die auch mit D6 frunzt.
Delphi-Quellcode:
Damit funktioniert der Output des Programms wie erwartet.
function Rot13(AValue: WideString): WideString;
var i: Integer; lValue: UTF8String; begin lValue := UTF8Encode(AValue); for i:=1 to Length(lValue) do case UpCase(lValue[ i ]) of 'A'..'M': lValue[ i ] := Chr(Byte(lValue[ i ]) + 13); 'N'..'Z': lValue[ i ] := Chr(Byte(lValue[ i ])- 13); end; result := UTF8Decode(lValue); end; |
AW: Eigenschaft von Tray Icons in der Notification Area über die Registry ändern (Win
Da bin ich wieder. Das Problem beschäftigt mich immer noch. Werde dein Programm untersuchen und melden was sich machen lässt.
Ob Microsoft das gefällt oder nicht sollte uns egal sein. Es gibt Icons die immer sichtbar sind, also muss es möglich sein auch ein eigenes Icon immer anzuzeigen. Ich spreche von den immer sichtbaren von Lautsprecher für die Audioregelung, Netzwerkadapter, Wartungscenter resp. PC Probleme lösen (die Flagge). So wie ich es sehe sind Google-Drive und weitere auch immer sichtbar obwohl man das nicht selbst einstellen muss. Hätte da noch eine andere Idee. Wo doch die 'Standard Einstellung 'Nur Benachrichtigungen anzeigen' heisst, könnte man doch Benachrichtigungen selbst generieren. Das Icon würde dann immer angezeigt ausser man blendet es mit der Einstellung komplett aus. Bei mir ist es oft vorgekommen dass ich 'Immer anzeigen' einstellen und dann wechselt es plötzlich ohne ersichtlichen Grund auf 'Nur Benachrichtigungen...'. Auf 'Nie anzeigen' hat es sich noch nie von selbst geändert. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:50 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