Parandage Windows 7 töölaua otseteede kadumine

Kui kasutate Windows 7, võisite märgata, et töölaua otseteed kaovad ilma nähtava põhjuseta. Selgub, et selle eest vastutab süsteemi hooldus. See töötab iganädalase hooldusteenusena, mis mõjutab töölaua otseteid kahel viisil.

Kõigepealt eemaldatakse töölaua otseteed, mida pole vähemalt kolm kuud kasutatud. Süsteemihooldus eemaldab ka töölaualt katkised otseteed, kui neid on rohkem kui neli. Viimase probleem on see, et Windows 7 tunneb katkestatud võrguühenduse asukohtade otseteed katki ja ka otseteede, mis lingivad kesta kaustadesse.

Microsoft pakub probleemile kahte lahendust. Esimene soovitus on hoida katkenud otseteede arv alla nelja. See ei ole alati võimalik ülalnimetatud katkenud otseteedega seotud probleemide tõttu.

Teine Microsofti soovitus on arvutihoolduse väljalülitamine:

  • Klõpsake nuppu Start ja siis nuppu Juhtpaneel.
  • Klõpsake jaotises Süsteem ja turvalisus nuppu Probleemide otsimine ja parandamine.
  • Klõpsake vasakpoolsel navigeerimispaanil käsku Muuda sätteid.
  • Lülitage arvuti hooldus olekusse Väljas.

See lülitab siiski välja kõik muud arvutihooldusega seotud toimingud, nagu süsteemi aja, kettaruumi vigade või kettaruumi tõrketeadete kontrollimine.

Kõiki hooldusülesandeid toidavad skriptid, mis asuvad kataloogis c: \ windows \ Diagnostics \ Scheduled \ Maintenance \. Valikuteks on skriptide redigeerimine otse selles kataloogis. Load keelavad praeguse kasutaja failide redigeerimise.

Windows 7 töölaua otseteede parandamine kaob

Pange tähele: see on häkk, mis võib mõjutada teisi opsüsteemi osi. Pärast seda töötas testisüsteemis kõik hästi, kuid veenduge, et failid oleks enne nende redigeerimist korralikult varundatud

Esmalt peame failide üle kontrollima, et saaksime neid redigeerida. Selleks peate kõigepealt võtma omandiõiguse ja seejärel muutma praeguse kasutaja juurdepääsuõigusi, et faile saaks muuta.

Esimese osa saab automatiseerida. Laadige skript lihtsalt sellest foorumist alla ja käivitage see. See peaks Windows Exploreris paremklõpsamise menüüsse lisama kande Omandamine.

Pärast skripti installimist minge Windows Exploreris jaotisse C: \ Windows \ diagnostika \ ajastatud \ Hooldus ja paremklõpsake faili TS_BrokenShortcuts.ps1 . Valige suvand Omanda omamine, mis peaks omandilise kuuluvuse üle andma sisselogitud kasutajale.

Kasutajal pole endiselt faili salvestamise õigusi, mis tähendab, et enne katkiste otseteede Powerscripti faili redigeerimist peame ka järgmise sammu tegema, nii et see ei kustuta katkiseid otseteid automaatselt.

Avage kõrgendatud käsurida. Selleks klõpsate nuppu Start orb, Kõik programmid ja seejärel Lisaseadmed. Paremklõpsake linki Käsuviip ja valige käsk Käivita administraatorina.

Andke aktiivsele kasutajale faili täielike õiguste saamiseks välja järgmine käsk. Asendage kindlasti USERNAME aktiivse kasutaja nimega.

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

Nüüd saate faili tavaliselt redigeerida tekstiredaktoris, näiteks Notepadis. Avage see ja leidke liin (rida 11)

[string]$list = ""

Kustutage kõik, mis on allpool seda rida, kuni (rida 22)

return $list

Kustutatud read:

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

$ fullPath = ConvertTo-WQLPath $ _. FullName

$ wmiLinkFile = Get-WmiObject -query "SELECT nimi, sihtmärk, AccessMask Win32_ShortcutFile-st WHERE nimi = '$ fullPath'"

if (-not (Test-ValidLink $ wmiLinkFile) -and (Test-Delete $ wmiLinkFile))

{

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

}

}

Põhimõtteliselt tagastab see skripti tühja nimekirja, nii et ühtegi otseteed ei kustutata. Olen seda testinud viie katkenud otseteega ja neid pole pärast süsteemihoolduse käitamist kustutatud.

See parandas katkenud otseteed, kuid meil on endiselt probleem, et ka Windows 7 kustutab otseteed, mida pole mõnda aega kasutatud.

Peame siin (peaaegu) tegema sama toimingu. Leidke samas kataloogis kataloog TS_UnusedDesktopIcons.ps1. Võtke see endale ja andke aktiivsetele kasutajatele juurdepääsuõigused.

Pärast seda redigeerige faili ja leidke rida (24)

[string]$list = ""

Kustuta kõik ridadeni (35)

return $list

nii et järgmised read kustutatakse

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

$ fullPath = ConvertTo-WQLPath $ _. FullName

$ wmiLinkFile = Get-WmiObject -query "SELECT nimi, sihtmärk, AccessMask Win32_ShortcutFile-st WHERE nimi = '$ fullPath'"

$ lastAccessTime = Get-LastAccessTime $ _. FullName

if ((Test-ValidLink $ wmiLinkFile) -ja (Test-Delete $ wmiLinkFile) -and (Test-FileShortcut $ wmiLinkFile) -and (Test-Unused $ lastAccessTime $ läve)

{

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

}

}

Pange tähele, et ma ei testinud teist skripti, kuid see peaks toimima sama hästi.

See peaks lahendama kõik probleemid, mis kasutajatel on eemaldatud otseteedega Windows 7 töölaual.

Enne nende redigeerimist veenduge, et failid varundatakse õigesti. Andke mulle teada, kas see töötas teie jaoks või on teil parem idee kustutatud otsetee probleemi lahendamiseks Windows 7-s.