我一直在試圖找到我的Windows機器上的方式來"defragment" the registry。首先,這是否有意義?這樣做的好處? (在superuser.com上沒有太多的愛)其次,我正在尋找一種使用Windows API的C/C++重寫註冊表的方法。有沒有辦法讀取註冊表,並將其寫入一個新的文件中,以避免沿途使用未使用的字節? (我可能會寫新的文件,然後引導到另一個OS /磁盤之前,我可以覆蓋原來的......但我願意承擔這個風險。)重寫註冊表文件在Windows
回答
微軟PageDefrag正是這樣做的,因爲它的網頁上指出:「PageDefrag使用標準文件碎片整理API來整理文件。」
(鏈接的文章的副本here因爲在典型的MSDN風格他們的鏈接是死的)
這裏有用的信息。但是,並不是我所期待的。我實際上正在尋找一種實用程序,它將檢查註冊表文件中未使用的空間並擺脫它。 – 2010-06-17 11:21:57
根據我的「windows內幕」一書; 「您可以通過備份壓縮註冊表,並使用Windows備份實用程序使用的Windows RegSaveKey和RegReplaceKey函數來恢復註冊表。」 – 2010-06-17 11:41:20
Alex是正確的;另請參閱http://technet.microsoft.com/en-us/library/cc750583.aspx – Luke 2010-06-17 19:44:14
讀值應該是可能的。
但我從來沒有見過的註冊表文件的方式寫入到磁盤的所有規格,除非你能找到一個你不得不逆向工程這些文件在您的操作系統(可能是XP和7等之間的差異) 。然後,你必須記住,註冊不只是一個文件,它的多個文件,其中一些屬於某些用戶,我認爲他們使用的SID而不是用戶名,以便即使您將它們移動到一個新的電腦,你必須請確保它是相同的用戶使用相同的SID設置的操作系統版本。
這個很少或沒有收穫,所以我會用超級用戶,它是沒有意義意見一致。
http://www.larshederer.homepage.t-online.de/erunt/ - NTREGOPT NT註冊表優化
類似於Windows 9x/Me中,在基於NT的系統註冊表文件可以隨着時間的推移變得支離破碎,比必要佔用硬盤 磁盤上更多的空間,降低整體性能。您應該定期使用NTREGOPT實用程序 ,但特別是在安裝 或卸載程序後,要儘量減少註冊表文件的大小並優化註冊表訪問。 該程序通過重新創建每個註冊表配置單元「從頭開始」, 從而消除可能由先前的 修改或刪除的鍵留下的任何鬆弛空間。
http://reboot.pro/index.php?showtopic=11212 - Offreg.dll MS WDK脫機註冊表庫
脫機註冊表庫(Offreg.dll)用於修改活動系統註冊表之外的註冊表配置單元。此庫適用於註冊表更新方案,例如爲操作系統映像提供服務。該庫支持從Windows XP開始的註冊表配置單元格式。 開發商觀衆
http://reboot.pro/topic/11312-offline-registry/ - 離線註冊MS WDK命令行工具
一個命令行工具,將允許讀取和寫入到離線的註冊表配置單元。
- 1. 在Windows 7註冊表中寫入
- 2. Windows註冊表
- 3. Windows註冊表文件影子副本
- 4. Windows註冊表文件關聯菜單
- 5. Windows ce註冊表
- 6. C#寫註冊表
- 7. 如果在Windows註冊表文件中的條件
- 8. 在HTA文件中使用Javascript從Windows註冊表中讀取/寫入
- 9. 在Windows註冊表項頂部添加註冊表項#
- 10. Windows Server 2008/Windows 7 MSI文件/註冊表失敗(x64)
- 11. Windows註冊表文本格式?
- 12. 導航註冊表文件
- 13. 導入註冊表文件
- 14. Windows註冊表 - 註冊應用程序以打開文件類型
- 15. 寫入/讀取Windows註冊表 - Windows服務
- 16. C,Windows API在註冊表鍵後創建文件夾結構
- 17. 創建一個註冊表文件在Windows啓動時
- 18. 從Windows註冊表獲取文件類型在c + +
- 19. C++ Windows註冊表編輯
- 20. Windows 8 AutoRotation註冊表值
- 21. C++搜索Windows註冊表
- 22. 訪問Windows註冊表
- 23. 編輯windows註冊表
- 24. 修改Windows註冊表項
- 25. Windows註冊表RunOnce循環
- 26. 訪問Windows註冊表Python
- 27. 什麼是Windows註冊表?
- 28. 根據條件寫入註冊表
- 29. 在窗口註冊表中註冊文件擴展名?
- 30. VB.NET - 寫入到註冊表
Downvoters,解釋。我已經嘗試過superuser.com。如果你認爲這是這個問題的地方,那麼投票結束。 – 2010-06-17 09:41:30