Warum Verknüpfungen / Icons vom Desktop verschwinden (und was man dagegen tun kann)

Dabei handelt es sich nicht um keinen Bug, sondern um ein Feature. Microsoft hat die Desktopbereinigung so sehr „optimiert“, dass sie schon mal Amok laufen kann.
Aber Abhilfe ist möglich.

Von früheren Windows-Versionen kennt man den freundlichen Desktopbereinigungsassistenten, der sich alle paar Wochen meldet, auf nicht benutzte Objekte auf dem Desktop hinweist und anbietet, diese zu entfernen. Ein kurzes „Nein“ bringt ihn zuverlässig zum Schweigen. Bei Windows 7 hat Microsoft das Verfahren mithilfe von Powershell-Skripten weiter entwickelt, die voll automatisch ablaufen. Was wie ein willkürliches Verschwinden von Desktop-Elementen aussieht, folgt tatsächlich einem klaren Plan. Einmal pro Woche überprüft ein Skript die Objekte auf dem Desktop und ergreift ggf. Maßnahmen:

  • Wenn ein Objekt auf dem Desktop mehr als drei Monate nicht mehr benutzt wurde, wird es gelöscht.
  • Wenn sich auf dem Desktop mehr als vier Verknüpfungen befinden, deren Ziel nicht mehr vorhanden ist, werden alle diese defekten Verknüpfungen gelöscht.
  • Im Gegensatz zu früheren Windows-Versionen werden die Elemente nicht in einen speziellen Ordner verschoben, sondern tatsächlich sofort gelöscht.

Auf dem Papier hört sich der Plan gut an, denn was spricht schon dagegen, nutzlos gewordene Verknüpfungen automatisch zu entfernen? Das Problem liegt dabei in der Definition von „defekt“. Leider erkennt die Überprüfung auch Verknüpfungen als defekt, die es eigentlich nicht sind. Beispiele:

  • Verknüpfungen ins Netzwerk
    Wenn zum Zeitpunkt der Überprüfung die entsprechende Netzwerkverbindung nicht besteht, wird die Verknüpfung als „defekt“ erkennt.
  • Verknüpfungen auf Wechseldatenträger
    Ist z. B. eine USB-Wechselplatte gerade nicht angeschlossen, werden Verknüpfungen darauf als „defekt“ erkannt.
  • Verknüpfungen ins Internet
    Ist die Internetverbindung oder der entsprechende Server gerade nicht erreichbar, werden solche Verknüpfungen als „defekt“ erkannt.
  • Verknüpfungen mit speziellen Protokollen
    Verwendet eine Verknüpfung ein spezielles Protokoll, dass von der Überprüfung nicht berücksichtigt wird, wird sie ebenfalls als „defekt“ erkannt, obwohl sie funktioniert.
  • Verknüpfungen zum Windows7-Spiele-Ordner
    Falls Sie die Idee hatten eine Verknüpfung zu einem der Spiele aus dem Spiele-Ordner auf den Desktop zu ziehen, funktioniert dies zwar, wird aber bei der Überprüfung als „defekt“ erkannt.

Abhilfe 1: Computerwartung deaktivieren

Die einfachste Variante Sie deaktivieren die Computerwartung, die allerdings noch einige weitere Funktionen steuert, die dann ebenfalls nicht mehr funktionieren:Computerwartung

  1. Öffnen Sie in der Systemsteuerung > System und Sicherheit > Wartungscenter, klicken Sie dort auf Problembehandlung für allgemeine Computerprobleme und dann links auf Einstellungen ändern.
  2. Wählen Sie dann unter Computerwartung die Option Aus.

Nun wird das Skript zur Desktopbereinigung nicht mehr ausgeführt und Ihre Verknüpfungen sind sicher.

Abhilfe 2: Die Anzahl der zulässigen „defekten“ Verknüpfungen erhöhen

Wenn es primär um das Problem geht, dass intakte Verbindungen irrtümlich als „defekt“ erkannt und deshalb entfernt werden, gibt es eine flexiblere Möglichkeit. Da die Desktopbereinigung durch ein Powershell-Skript C:\ Windows\ Diagnostics\ Scheduled\ Maintenance\ TS_BrokenShortcuts.ps1 durchgeführt wird, lässt sich das Verhalten relativ einfach „umprogrammieren“. Allerdings muss man sich zunächst die notwendigen Rechte beschaffen:

  • Bei der fraglichen Datei handelt es sich um eine Systemdatei, an der Sie standardmäßig nichts verändern können. Um die Schreibrechte zu erlangen, müssen Sie zunächst „Besitzer“ dieser Datei werden. Das geht in den Eigenschaften der Datei in der Rubrik Sicherheit. Klicken Sie hier auf Erweitert, dann Besitzer. Klicken Sie dort auf Bearbeiten und wählen Sie dann Ihren Benutzernamen aus und klicken Sie OK. Dann solange OK, bis alle Dialoge geschlossen sind.
  • Nun sind Sie zwar Besitzer der Datei, habe aber noch immer nicht alle Zugriffsrechte. Das erledigen Sie am besten mit einer Eingabeaufforderung mit Administratorrechten. Geben Sie dort den Befehl icacls C:\ windows\ diagnostics\ scheduled\ maintenance\ TS_BrokenShortcuts.ps1 /grant Administrator F ein.

Nun können Sie die Datei bearbeiten und die fragliche Funktion zum Löschen „defekter“ Verknüpfungen in Ihrem Sinne manipulieren:

  1. TS_BrokenShortcutsÖffnen Sie im Windows Explorer den Ordner C:\ Windows\ Diagnostics\ Scheduled\ Maintenance.
  2. Klicken Sie hier mit der rechten Maustaste auf die Datei TS_BrokenShortcuts.ps1 und wählen Sie im Kontextmenü den Befehl Bearbeiten.
  3. Damit öffnen Sie das Skript im Powershell-Editor. Scrollen Sie hier nach unten, bis Zeile 44 angezeigt wird (die Zeilen sind links durchnummeriert). Springen Sie in dieser Zeile ganz ans Ende.
  4. Alternativ verwenden Sie Bearbeiten/Im Skript suchen und geben als Suchbegriff „-gt 4″ ein. Das bringt Sie an dieselbe Stelle im Skript.
  5. TS_BrokenShortcuts_aendernDie hier stehende Zahl 4 gibt die Schwelle vor, ab der „defekte“ Verknüpfungen entfernt werden. Setzen Sie den Wert hoch, etwa auf 10, wird das Skript erst aktiv, wenn es mehr als 10 „defekte“ Verknüpfungen erkennt.
  6. Speichern Sie das Skript mit dem neuen Wert mit Datei/Speichern und schließen Sie den Editor.

Nun zeigt sich die Desktopbereinigung abhängig von der gewählten Zahl wesentlich toleranter. Einzige Nebenwirkung: Auch wirklich defekte Verknüpfungen werden so nicht mehr automatisch entfernt. Dafür funktionieren aber alle anderen Funktionen der Computerwartung uneingeschränkt weiter.