Kann ich das Ändern von Überlagerungssymbolen verhindern?

16

Hintergrund

Mehrere Programme ändern die Symbole im Explorer, um einen Zustand anzuzeigen ("synchronisiert" TortoiseCVS-Synchronisierungs-Overlayusw.)

Es ist bekannt, dass Windows (win7, win8, win10?) Nur eine begrenzte Anzahl solcher Symbole verarbeiten kann (~ 15), und es gibt mehrere verwandte Fragen (z. B. hier ).

Diese Overlay-Icons sind in der Registry in der Filiale registriert:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers

Position der Shell-Overlay-Symbole in der Registrierung

Nur die ersten paar Einträge (15?) Werden tatsächlich verwendet, die anderen werden ignoriert. Wenn mehrere Programme ihre eigenen Überlagerungssymbole installieren, kann dies das Verhalten bereits installierter Programme beeinträchtigen.

Um dies zu beheben, muss man normalerweise in die Registrierung gehen und unerwünschte Einträge löschen (oder umbenennen), bis die gewünschten Einträge oben sind.

Problem

In letzter Zeit habe ich ein zunehmend aggressives Verhalten mehrerer Programme beobachtet, die um diese Spitzenpositionen kämpften. Dies geschieht meistens durch Schlüsselnamen, die mit Leerzeichen beginnen, um die Top-Sortierung zu erzwingen. Dies machen zum Beispiel Dropbox , GoogleDrive , SkyDrive und OneDrive . Einige, wie GoogleDrive , verwenden heutzutage sogar drei Leerzeichen, aber andere Programme werden gleich ...

Was noch schlimmer ist, manche Programme reparieren diese Einstellung sogar automatisch während eines automatischen 'Updates' (oder sogar einer Update-Überprüfung oder eines Programmstarts?). Manuelle Anpassungen werden daher regelmäßig rückgängig gemacht. Das ist mir zumindest bei GoogleDrive , Dropbox und OneDrive aufgefallen

Frage

Gibt es eine Möglichkeit, die Registrierung vor solchen automatisierten Änderungen zu schützen?

Bearbeiten (Antwort)

Alexey Ivanov hat im folgenden Kommentar einen guten Vorschlag gemacht, und bisher hat das "Widerrufen von Registrierungsberechtigungen" das Problem für mich unterdrückt.

BmyGuest
quelle
2
Ich habe eine ziemlich große Änderung an Ihrem Beitrag vorgenommen - das Problem ist, dass, wenn Sie nach der Batch-Datei fragen, dies nicht zum Thema gehört, da wir kein Skript-Schreibservice sind. Plus, Stapel kann oder kann nicht der beste Weg sein. Wenn Sie dies einfach halten, werden (hoffentlich) verschiedene Arten von Antworten möglich sein. Fühlen Sie sich frei, mein Wechselgeld zurückzusetzen, wenn es zu groß ist, aber akzeptieren Sie, dass es zu diesem Zeitpunkt möglicherweise als nicht relevant angesehen wird.
Dave
@ Dave: OK, ich wusste nicht, dass Batch-Dateien auf dieser Site nicht zulässig sind, da ich in den Antworten viele davon gesehen habe. Ich dachte nur, eine Batch-Datei könnte die "einzige" Lösung sein, aber wirklich, ich bin nach einer Lösung auf jede Art und Weise und Ihre Bearbeitung ist in Ordnung für mich. Wenn Sie denken, dass dies die Akzeptanz der Post erhöht, dann vielen Dank.
BmyGuest
Es ist in Ordnung, mit Ihrer aktuellen Batch-Datei um Hilfe zu bitten (und Sie müssen den Code freigeben). Aber uns zu bitten, einen für Sie zu schreiben, ist nicht :)
Dave
1
Ich würde eine Antwort auf diese Frage wirklich lieben. Dropbox wird wirklich ärgerlich, wenn bei jedem Update die TortoiseSVN-Symbole ersetzt werden. Ich habe ein Skript erstellt, das diese Probleme behebt und Windows Explorer neu startet. Diese Frage wurde jedoch gestellt, als ich nach einer Möglichkeit suchte, dies zu vermeiden ...
Nuno
2
Das erste, was mir in den Sinn kommt, ist das Widerrufen von Schreibrechten für diesen Registrierungsschlüssel. Dann kann kein Programm die Registrierungseinträge ändern. Damit eine Anwendung ihre Überlagerungssymbole registrieren kann, müssen Sie die Berechtigungen für den Schlüssel erneut bearbeiten, um Schreibrechte hinzuzufügen.
Alexey Ivanov

Antworten:

13

Was ich getan habe, da Dropbox wirklich nervig wird, ist, dass ich eine ".reg" -Datei erstellt habe, die alle diese Dropbox-Einträge entfernt:

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt01]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt02]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt03]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt04]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt05]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt06]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt07]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt08]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt09]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\   DropboxExt10]

Dann führe ich eine ".cmd" -Datei aus, die diese ausführt und den Windows Explorer neu startet:

regedit -s FixDropboxTortoiseSVNConflict.reg

taskkill /f /im explorer.exe

start explorer.exe

Und TortoiseSVN zeigt wieder Icon-Overlays.

Dies ist nicht die schönste Art, Dinge zu tun. Möglicherweise müssen die oben genannten Registrierungsschlüssel geändert werden, wenn Dropbox sie in Zukunft erneut ändert. Es entfällt jedoch die manuelle Arbeit, nacheinander in die Registrierung zu gehen und sie umzubenennen / zu löschen :)

Nuno
quelle
Großartig, genau das, wonach ich gesucht habe, danke! Die Verwendung start explorer.exein der cmd-Datei macht den Explorer zu einem Hintergrundprozess, sodass das Shell-Fenster nach dessen Abschluss nicht geöffnet bleibt.
Shlublu
1
Wenn Sie die overlays.regDatei in Ihrem .cmdmit anwenden regedit -s overlays.reg, können Sie alles in einer Aktion beheben . Sie können auch einfach den gesamten HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiersSchlüssel löschen und die erforderlichen wieder hinzufügen. Andernfalls fügen OneDrive und Dropbox den Schlüsseln immer wieder Leerzeichen hinzu.
Dave Anderson