Izlabot Windows 7 darbvirsmas saīsnes

Ja izmantojat operētājsistēmu Windows 7, iespējams, pamanījāt, ka darbvirsmas saīsnes pazūd bez acīmredzama iemesla. Izrādās, ka par to ir atbildīga sistēmas uzturēšana. Tas darbojas kā iknedēļas uzturēšanas pakalpojums, kas darbvirsmas saīsnes ietekmē divējādi.

Vispirms tas noņems darbvirsmas saīsnes, kuras nav izmantotas vismaz trīs mēnešus. Sistēmas uzturēšana darbvirsmā noņems arī salauztus saīsnes, ja tādu ir vairāk nekā četri. Pēdējā problēma ir tāda, ka Windows 7 atpazīs atvienoto tīkla vietu saīsnes kā salauztas un arī īsceļus, kas saista ar apvalka mapēm.

Microsoft piedāvā divus problēmas risinājumus. Pirmais padoms ir saglabāt sabojāto īsceļu skaitu zem četriem. Tas ne vienmēr ir iespējams iepriekš minēto problēmu dēļ ar salauztiem saīsnēm.

Otrs Microsoft ieteikums ir izslēgt datoru uzturēšanu:

  • Noklikšķiniet uz Sākt un pēc tam uz Vadības panelis.
  • Sadaļā Sistēma un drošība noklikšķiniet uz Atrast un labot problēmas.
  • Kreisajā navigācijas rūtī noklikšķiniet uz Mainīt iestatījumus.
  • Iestatiet datora uzturēšana uz Izslēgts.

Tas tomēr izslēdz visus citus ar datora uzturēšanu saistītos uzdevumus, piemēram, sistēmas laika, diska apjoma kļūdu vai diska vietas kļūdu ziņojumu pārbaudi.

Visus apkopes uzdevumus nodrošina skripti, kas atrodas c: \ Windows \ Diagnostics \ Plānotā \ Apkope \. Iespējas ir rediģēt skriptus tieši šajā direktorijā. Atļaujas aizliedz pašreizējā lietotāja rediģēt failus.

Windows 7 darbvirsmas saīsņu labošana, kas pazūd

Lūdzu, ņemiet vērā: šī ir haka, kas var ietekmēt citas operētājsistēmas daļas. Pēc tam testa sistēmā viss darbojās labi, taču pirms to rediģēšanas pārliecinieties, vai failiem ir izveidots dublējums

Vispirms mums jāpārņem faili, lai mēs tos varētu rediģēt. Lai to izdarītu, vispirms jāuzņemas īpašumtiesības un pēc tam jāmaina pašreizējā lietotāja piekļuves tiesības, lai failus varētu modificēt.

Pirmo daļu var automatizēt. Vienkārši lejupielādējiet skriptu šajā forumā un izpildiet to. Tam vajadzētu pievienot ierakstu Pārņemt īpašumtiesības ar peles labo pogu noklikšķiniet izvēlnē pārlūkprogrammā Windows Explorer.

Pēc skripta instalēšanas dodieties uz C: \ Windows \ diagnostika \ plānots \ uzturēšana operētājsistēmā Windows Explorer un ar peles labo pogu noklikšķiniet uz faila TS_BrokenShortcuts.ps1 . Atlasiet opciju Veikt īpašumtiesības, kurai īpašumtiesības jānodod pieteicies lietotājam.

Lietotājam joprojām nav atļauju saglabāt failu, kas nozīmē, ka mums ir jāveic arī nākamais solis, pirms mēs varam rediģēt sadalītos saīsnes Powerscript failu, lai tas automātiski neizdzēstu salauztos saīsnes.

Atveriet paaugstinātu komandrindas uzvedni. Jūs to darāt, noklikšķinot uz Sākt orb, Visas programmas un pēc tam uz Piederumi. Ar peles labo pogu noklikšķiniet uz saites Command Prompt un atlasiet Run as Administrator.

Tagad piešķiriet šo komandu, lai aktīvajam lietotājam piešķirtu visas faila tiesības. Noteikti nomainiet USERNAME ar aktīvā lietotāja vārdu.

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

Tagad failu var rediģēt parasti teksta redaktorā, piemēram, Notepad. Atveriet to un atrodiet līniju (11. rinda)

[string]$list = ""

Dzēst visu, kas atrodas zem šīs līnijas līdz (22. rinda)

return $list

Svītrotās rindas ir šādas:

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

$ fullPath = ConvertTo-WQLPath $ _. FullName

$ wmiLinkFile = Get-WmiObject -query "SELECT Vārds, Mērķis, AccessMask NO Win32_ShortcutFile WHERE Name = '$ fullPath'"

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

{

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

}

}

Tas pamatā atdod skriptam tukšu sarakstu, lai netiktu izdzēsti saīsnes. Esmu to pārbaudījis ar pieciem salauztiem saīsnēm, un pēc sistēmas uzturēšanas tie nav izdzēsti.

Tas novērsa saīsinātos īsceļus, taču joprojām pastāv problēma, ka arī Windows 7 izdzēš īsceļus, kas kādu laiku nav izmantoti.

Šeit mums (gandrīz) jāveic tā pati operācija. Tajā pašā direktorijā atrodiet failu TS_UnusedDesktopIcons.ps1. Pārņemiet to un piešķiriet aktīvajiem lietotājiem piekļuves tiesības.

Pēc tam rediģējiet failu un atrodiet līniju (24)

[string]$list = ""

Dzēst visu līdz līnijai (35)

return $list

lai šīs rindiņas tiktu izdzēstas

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

$ fullPath = ConvertTo-WQLPath $ _. FullName

$ wmiLinkFile = Get-WmiObject -query "SELECT Vārds, Mērķis, AccessMask NO Win32_ShortcutFile WHERE Name = '$ fullPath'"

$ lastAccessTime = Get-LastAccessTime $ _. Pilns vārds

if ((Test-ValidLink $ wmiLinkFile) -and (Test-Delete $ wmiLinkFile) -and (Test-FileShortcut $ wmiLinkFile) -and (Test-Unused $ lastAccessTime $ slieksnis))

{

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

}

}

Lūdzu, ņemiet vērā, ka es nepārbaudīju otro skriptu, bet tam vajadzētu darboties tikpat labi.

Tam vajadzētu atrisināt visas problēmas, kas lietotājiem rodas ar noņemtajiem saīsnēm Windows 7 darbvirsmā.

Pirms to rediģēšanas pārliecinieties, vai esat dublējis failus. Lūdzu, dariet man zināmu, vai tas jums izdevās, vai arī jums ir labāka ideja par to, kā novērst izdzēsto saīsnes problēmu sistēmā Windows 7.