如何修復損壞的 WIM 檔案?

如何修復損壞的 WIM 檔案?

總長DR
我正在嘗試提取損壞的 WIM 存檔。我嘗試過使用 DISM,但它不允許我安裝它,因為它無法將其識別為 WIM 檔案。我也嘗試過使用十六進制編輯器對其進行編輯,但我不知道可以更改什麼。

問題
我在 Windows 10 上使用 7-zip 在我的主目錄中建立了一個包含一堆資料夾的 WIM 文件,然後透過網路將其移至外部硬碟。當我稍後嘗試使用 7-zip 解壓縮它時,它只會將其作為包含以下內容的 zip 檔案開啟:

  • _rels
    • .rels.xml
  • 文件屬性
    • 應用程式.xml
    • 核心文件
  • 單字
    • _rels
      • 文檔.xml.rels
    • 主題
      • 主題1.xml
    • 文檔.xml
    • 字型表.xml
    • 設定.xml
    • 樣式.xml
    • 網頁設定.xml
  • [內容類型].xml

到目前為止我已經嘗試過的
這是使用7-zip的測試存檔功能的結果:

D:\WIMFile.wim
警告:
有效負載資料末尾後有一些資料
警告
無法將檔案作為 [wim] 存檔打開
該檔案已作為 [zip] 存檔打開

我做了一些谷歌搜尋並發現了這表示您可以使用 DISM 修復 WIM 檔案。不幸的是,除非我遺漏了某些東西,否則它需要您安裝該檔案才能修復它。我嘗試在 Windows 命令列中使用“dism /Apply-Image /ImageFile:D:\WIMFile.wim /Index:1 /ApplyDir:D:\mountPoint”掛載它並收到此錯誤:

錯誤:11

嘗試載入格式不正確的程式。

DISM 日誌檔案位於 C:\WINDOWS\Logs\DISM\dism.log

查看日誌檔顯示:

警告 DISM DISM WIM 提供者:PID=6912 [ReadWimHeader:(1723) -> 版本/標頭不符] D:\WIMFile.wim (HRESULT=0x8007000B) - CWimManager::WimProviderMMLogLogCallback [69124]

錯誤 DISM DISM WIM 提供者:PID=6912 [WIMCreateFile:(425) > -> 無法讀取 WIM 標頭] D:\WIMFile.wim (HRESULT=0x8007000B) - CWimManager::WimProviderMLogLogCsgback

我又做了一些谷歌搜索,發現這裡使用 7z 存檔,您可以使用十六進位編輯器手動編輯存檔並取代損壞的部分。我製作了一些其他 WIM 檔案只是為了進行比較,並且能夠在 FAR Manger 中開啟它們。損壞的檔案有 43 GB,但這顯然太大了,因為它告訴我:

無法開啟檔案
D:\WIMFile.wim
沒有足夠的儲存空間來處理此命令

所以,我回到谷歌,找不到任何與FAR Manager 相關的東西,但我找到了support.microsoft.com/en-us/kb/106167(抱歉,我用完了我的連結配額)並想我會給它一槍。我必須建立註冊表項並將值設為最大值 12,但這沒有什麼區別。

接下來,為了獲得更多空間,我想我可以切換到幾乎空的 500 GB 硬碟,上面裝有 Kubuntu 14.04。我不得不切換到名為 Bless 的十六進位編輯器,因為 FAR Manager 僅適用於 Windows,但我能夠開啟損壞的檔案。我製作的測試 WIM 檔案之間唯一明顯相似的方面是每個檔案開頭的文字「MSWIM」。損壞的文件缺少這個,所以我添加了它,但沒有什麼區別。我不確定在不進一步弄亂文件的情況下我還可以更改什麼。

問題
那麼,我還可以使用十六進制編輯器更改什麼才能提取此文件?我是否錯過了 DISM 的某些功能,該功能允許您在不安裝檔案的情況下修復檔案?我也對任何其他解決方案持開放態度。

編輯
我忘了提及我也嘗試過 7-zip 的解析模式。它給了我一堆檔案,其中一些我可以打開,裡面有我的一些文件。仍然有一個大檔案大約是原始 WIM 檔案的 90%,但仍然拒絕開啟。

相關內容