# Windows 登錄需要定期清理嗎

解除安裝軟體後留下的登錄項目，和清理工具掃描出來的一長串登錄問題，不是一回事。前者可以沿著某個 App 的安裝、解除安裝和檔案位置核對。後者如果只有一個名稱或編號，很難讓使用者知道刪除以後會影響什麼。

## 登錄裡不只放解除安裝殘留

Windows 和軟體用登錄儲存設定、檔案類型、服務和其他登記。項目數量多並不能說明系統需要維修。刪掉一批記錄也不能說明哪個軟體會因此變快。磁碟空間不足也不該先從登錄裡找答案。大檔和快取通常需要到儲存空間目錄裡檢查。

微軟的[登錄說明](https://learn.microsoft.com/en-us/troubleshoot/windows-server/performance/windows-registry-advanced-users)介紹了這些用途和備份方法。處理具體故障時，應沿著對應軟體或系統文件確認要改哪一項。不能把掃描器的一個問題數量當成需要批次刪除的依據。

## 登錄裡記的路徑，資料在別處

`HKEY_CURRENT_USER`（HKCU）通常儲存目前使用者的設定，`HKEY_LOCAL_MACHINE`（HKLM）儲存整機的設定。兩者的影響範圍不一樣。一個值裡寫著檔案路徑，它也只是路徑，不是檔案本身。刪掉這個機碼既不會解除安裝程式，也不會順便刪掉它指向的資料。

例如解除安裝以後右鍵功能表裡還留著某個軟體的入口，點開卻找不到程式。要核對的是這條登記具體指向哪裡，電腦上是否還有另一份安裝。把所有帶著廠商名稱的機碼都刪掉，可能連帶改掉同一家其他產品的設定。有用的排查是順著某一條登記往下查，而不是數有多少個名稱對得上。

<figure class="blog-diagram">
  <picture>
    <source media="(max-width: 900px)" srcset="/img/blog/windows-windows-registry-cleaning-zh-mobile.webp" type="image/webp" width="768" height="1180">
    <img src="/img/blog/windows-windows-registry-cleaning-zh.webp" width="1360" height="454" loading="lazy" alt="設定範圍與備份範圍，要分別核對">
  </picture>
  <figcaption>使用者設定與整機設定的範圍不同。登錄匯出儲存選定機碼值，不包含被參考的程式檔案。</figcaption>
</figure>

## 匯出的 .reg 不是整台電腦的快照

`.reg` 檔用文字記錄機碼和值。匯入時把這些內容寫回登錄，不會讓整個登錄自動回到匯出那一刻的樣子，也不會復原程式檔案、驅動程式和個人資料。把所有舊備份一起匯入，還可能把已經正確移除的啟動項目和檔案關聯重新加回來。

復原前先把備份的時間、軟體名稱和裡面的機碼路徑對上要復原的那次操作。需要系統層級復原時走 Windows 的復原工具。微軟的[登錄說明](https://learn.microsoft.com/en-us/troubleshoot/windows-server/performance/windows-registry-advanced-users)講了機碼的備份和復原。其中舊版系統的路徑和工具不能原樣照搬到現在的 Windows 上。

弄清一份備份涵蓋了什麼，比看到已備份幾個字更有用。能復原也不代表一個說不清來歷的機碼就可以放心刪。

## 解除安裝後的登記，先確認屬於哪個 App

一個解除安裝程式可能只移除了主程式。檔案開啟方式、啟動項目或右鍵功能表仍留著，也可能為了重裝繼續使用，保留軟體自己的設定。目錄名稱相似、發行者相同，都不足以證明一項登記可以跟著某個 App 一起刪。

Mole 先執行軟體自己的解除安裝程式，成功以後才處理使用者選取的殘留。核對歸屬和目前仍安裝的軟體。個人資料預設不勾選。共用內容要留給仍在使用它的軟體。

這裡的登錄處理服務於這一次解除安裝，不是從整台電腦裡找所有看上去沒用的機碼。解除安裝被取消或失敗時，後面的資料移除也不會照常執行。

## 刪除前有備份，復原仍要看範圍

Mole 移除登錄項目前會儲存 `.reg` 備份，可以按時間和軟體名稱找到對應檔案。具體位置和檢查方法在 [Windows 說明](/tw/windows/help)裡。匯入前先查看內容，只復原這次需要的那一份，不要把整個備份目錄裡的檔案一起匯入。

登錄備份復原的是登記，不能重新安裝已經刪除的程式，也不能找回已永久刪除的檔案。解除安裝留下的檔案移到資源回收筒時，只有它們仍在資源回收筒裡才有那條復原路徑。清空以後條件就變了。

## 無效啟動項目也要能確認目標

程式已經解除安裝，啟動項目仍指向不存在的可執行檔，可以在核對目標後處理。外接磁碟沒接上、網路位置暫時打不開，或目前帳戶沒有權限讀取，不能當成軟體已經刪除。

Mole 最佳化裡的無效啟動項目檢查和軟體頁的移除入口都遵守這個差別。一般使用者可以決定的是看得懂、歸屬清楚的那一項。不需要為了讓清單歸零去接管系統權限。

遇到軟體卸完還在執行，先看[解除安裝後留下的檔案和處理程序](/tw/windows/blog/what-apps-leave-after-uninstall)。遇到開始功能表或搜尋故障，再看[Windows 最佳化具體做什麼](/tw/windows/blog/what-windows-optimization-does)。把問題對應到一個實際入口，比定期掃一遍登錄更容易複查結果。


Canonical: https://mole.fit/tw/windows/blog/windows-registry-cleaning
