Remediază Windows 7 Comenzi rapide pentru desktop

Dacă rulați Windows 7, poate ați observat că comenzile rapide de pe desktop dispar fără niciun motiv aparent. Se dovedește că întreținerea sistemului este responsabilă pentru asta. Funcționează ca un serviciu de întreținere săptămânal, care afectează scurtăturile desktop în două moduri.

Mai întâi va elimina scurtăturile desktop care nu au fost folosite de cel puțin trei luni. Întreținerea sistemului va elimina, de asemenea, comenzile scurte de pe desktop dacă există mai mult de patru dintre ele. Problema cu acesta din urmă este că Windows 7 va recunoaște comenzile rapide către locațiile de rețea deconectate ca fiind întrerupte și, de asemenea, comenzile rapide care leagă la folderele shell.

Microsoft oferă două soluții la problemă. Primul sfat este să mențineți numărul de comenzi rapide rupte sub patru. Acest lucru nu este întotdeauna posibil din cauza problemelor cu comenzile scurte menționate mai sus.

A doua sugestie de către Microsoft este de a opri întreținerea computerului:

  • Faceți clic pe Start, apoi pe Panou de control.
  • În Sistem și securitate, faceți clic pe Găsiți și remediați problemele.
  • În panoul de navigare din stânga, faceți clic pe Modificare setări.
  • Setați întreținerea computerului pe Off.

Cu toate acestea, acesta dezactivează toate celelalte sarcini legate de întreținerea computerului, cum ar fi verificarea timpului sistemului, erorilor de volum ale discului sau rapoartelor de eroare în spațiu pe disc.

Toate sarcinile de întreținere sunt alimentate de scripturi care sunt localizate în c: \ windows \ Diagnostics \ Scheduled \ Maintenance \. Opțiunile sunt să editați scripturile direct în acel director. Permisiunile interzic ca fișierele să fie editate de utilizatorul curent.

Fixarea comenzilor desktop Windows 7 Dispare

Vă rugăm să rețineți: Acesta este un hack care poate afecta alte părți ale sistemului de operare. Totul a funcționat bine după un sistem de testare, dar asigurați-vă că faceți backup copiilor corect înainte de a le edita

Mai întâi trebuie să preluăm controlul asupra fișierelor, astfel încât să le putem edita. Pentru a face acest lucru, trebuie să luați mai întâi proprietatea și apoi să modificați drepturile de acces ale utilizatorului curent, astfel încât fișierele să poată fi modificate.

Prima parte poate fi automatizată. Trebuie doar să descărcați scriptul de pe acest forum și să îl executați. Aceasta ar trebui să adauge o intrare Take Ownership în meniul clic dreapta din Exploratorul Windows.

Accesați C: \ Windows \ diagnostics \ planificat \ Întreținere în Windows Explorer după instalarea scriptului și faceți clic dreapta pe fișierul TS_BrokenShortcuts.ps1 . Selectați opțiunea Take Ownership, care ar trebui să transfere proprietatea utilizatorului conectat.

Utilizatorul încă nu are permisiuni pentru a salva fișierul, ceea ce înseamnă că trebuie să finalizăm și pasul următor înainte de a putea edita fișierele rapide Powerscript de scurtături, astfel încât să nu ștergeți scurtăturile stricate automat.

Deschideți o linie de comandă ridicată. Faceți acest lucru făcând clic pe Start orb, Toate programele, apoi Accesorii. Faceți clic dreapta pe linkul Prompt de comandă și selectați Executare ca administrator.

Acum emite următoarea comandă pentru a acorda utilizatorului activ drepturi complete asupra fișierului. Asigurați-vă că înlocuiți USERNAME cu numele utilizatorului activ.

icacls c:\windows\diagnostics\scheduled\maintenance\TS_BrokenShortcuts.ps1 /grant USERNAME:F

Acum puteți edita fișierul în mod normal într-un editor de text precum Notepad. Deschideți-l și localizați linia (linia 11)

[string]$list = ""

Ștergeți tot ce este mai jos de sub această linie până la (linia 22)

return $list

Liniile care sunt șterse sunt:

Get-ChildItem -Path $path -filter *.lnk | Foreach-Object {

$ fullPath = ConvertTo-WQLPath $ _. FullName

$ wmiLinkFile = Get-WmiObject -query "SELECT Nume, țintă, AccessMask FROM Win32_ShortcutFile WHERE Name = '$ fullPath'"

if (-not (Test-ValidLink $ wmiLinkFile) -si (Test-Șterge $ wmiLinkFile))

{

$ list = AttachTo-List $ list $ wmiLinkFile.Name

}

}

Practic, aceasta returnează o listă goală în script, astfel încât să nu fie șterse scurtături. L-am testat cu cinci comenzi rapide rupte și nu au fost șterse după executarea sistemului de întreținere.

Acest lucru a rezolvat comenzile scurte, dar avem încă problema că comenzile rapide care nu au fost folosite de ceva timp sunt șterse și de Windows 7.

Trebuie (aproape) să executăm aceeași operație aici. Localizați fișierul TS_UnusedDesktopIcons.ps1 în același director. Preia proprietatea acestuia și acordă drepturile de acces ale utilizatorilor activi.

Editați apoi fișierul și localizați linia (24)

[string]$list = ""

Șterge totul la linie (35)

return $list

astfel încât liniile următoare să fie șterse

Get-ChildItem -Path $path -filter *.lnk | Foreach-Object {

$ fullPath = ConvertTo-WQLPath $ _. FullName

$ wmiLinkFile = Get-WmiObject -query "SELECT Nume, țintă, AccessMask FROM Win32_ShortcutFile WHERE Name = '$ fullPath'"

$ lastAccessTime = Get-LastAccessTime $ _. FullName

if ((Test-ValidLink $ wmiLinkFile) -and (Test-Șterge $ wmiLinkFile) -si (Test-FileShortcut $ wmiLinkFile) -si (Test-Nefolosit $ lastAccessTime $ prag))

{

$ list = AttachTo-List $ list $ wmiLinkFile.Name

}

}

Rețineți că nu am testat al doilea script, dar ar trebui să funcționeze la fel de bine.

Acest lucru ar trebui să rezolve toate problemele pe care utilizatorii le au cu scurtăturile eliminate pe desktopul Windows 7.

Asigurați-vă că faceți o copie de siguranță a fișierelor înainte de a le modifica. Vă rugăm să anunțați dacă acest lucru a funcționat pentru dvs. sau dacă aveți o idee mai bună despre cum să remediați problema scurtăturii șterse în Windows 7.