*20240621更
新方法(強(qiáng)制重建):
只要把
%LocalAppData%\Packages\Microsoft.Windows.Search_cw5n1h2txyewy
裡面的檔案全選刪除就好了
刪不掉就跳過(guò)
刪完之後點(diǎn)開始功能表那邊的搜尋按鈕,等他重建就好了:)
如果出問(wèn)題(低機(jī)率),重啟檔案總管就好,不需要重新開機(jī)
-------我是分隔線-------
以下舊文:
開始功能表搜尋的問(wèn)題:
1.搜尋不到
2.搜尋到已經(jīng)刪掉的程式,還清不掉
會(huì)這樣是因?yàn)樗麤](méi)更新快取
搜尋結(jié)果的快取是存放在這個(gè)位置
C:\Users\%userprofile%\AppData\Local\Packages\Microsoft.Windows.Search_cw5n1h2txyewy\LocalState\DeviceSearchCache
通常裡面會(huì)有很多個(gè)AppCache和一個(gè)SettingCache
如果只有一個(gè)AppCache就表示他沒(méi)在更新快取,就會(huì)出現(xiàn)問(wèn)題
如果只有一個(gè)AppCache就表示他沒(méi)在更新快取,就會(huì)出現(xiàn)問(wèn)題
搜尋的資料都存在裡面
如果把AppCache都刪掉開始功能表就會(huì)搜不到任何東西
如果搜尋會(huì)跑出已經(jīng)刪掉的程式,還清不掉
你可以自行編輯AppCache的txt檔,打開來(lái)是json格式
你可以自行編輯AppCache的txt檔,打開來(lái)是json格式
用vscode自動(dòng)排版就可以輕鬆編輯了
但我們的重點(diǎn)是要讓他能自動(dòng)更新
小弟測(cè)試過(guò)唯一有效的方法在這裡,使用Reset Windows Search PowerShell script
使用方法參見(jiàn)
使用cmd輸入以下指令可以開啟powershell
powershell -Command "Start-Process PowerShell -ArgumentList '-NoExit -Command cd $HOME\Desktop' -Verb RunAs"
再用我整理好的指令,我最後加了一行Get-ExecutionPolicy用來(lái)確認(rèn)
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted -Force
.\ResetWindowsSearchBox.ps1
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Restricted -Force
Get-ExecutionPolicy
執(zhí)行結(jié)果長(zhǎng)這個(gè)樣子
然後重啟explorer.exe
之後等待很長(zhǎng)一段時(shí)間他就會(huì)自動(dòng)好了
本來(lái)用這個(gè)方法沒(méi)有馬上修復(fù),我還以為沒(méi)效,過(guò)幾天就發(fā)現(xiàn)他居然修好了
推測(cè)是因?yàn)閃indows會(huì)在背景重新整理(通常是用系統(tǒng)服務(wù)或工作排程器進(jìn)行),等到下次重整的時(shí)候就生效了
參見(jiàn)