DISM 的版本為 6.1.7600.16385,提取自 Windows® 7 的 Windows® 自動化安裝套件 (AIK)。經測試可以在新重灌的 Windows Server 2003 SP2 中使用,網友回報 Windows XP 中也能用。Windows 7 已經內建 DISM,所以 Windows 7 使用者無須下載。
使用方法:
首先至 wimmount 資料夾,在 wimmount.inf 上點滑鼠右鍵,再點「安裝」。
(這一步是為了安裝 wim 掛載所需的驅動程式,否則 DISM 無法 mount wim 映像)
開啟命令提示字元,進入 DISM 資料夾,即可開始使用。
cd /d x:\dism
檔案下載:DISM_6.1.7600.16385_x86.7z
測試的一些可用的命令:由於是第一次做,不知道使用上會不會有問題,所以測試了曾經用過的 DISM 命令(DISM 來自於通過安裝 Windows 7 的 WAIK),測試的這些命令都能夠正常使用。當然,DISM 命令很多很複雜,我不可能全部測試。不過我想應該都不會有問題。
Dism /Get-WIMInfo /WimFile:R:\install.wim Dism /Mount-WIM /WimFile:R:\install.wim /index:1 /MountDir:R:\TEST Dism /Unmount-WIM /MountDir:R:\test /discard Dism /Image:R:\test /Get-Packages Dism /Image:R:\test /Get-Packages /format:table > R:\t1.txt DISM /Image:R:\test /Remove-Package /PackageName:Demo-Package~123456~x86~~6.1.7600.16385 Dism /image:R:\test /Get-PackageInfo /PackageName:Demo-Package~123456~x86~~6.1.7600.16385 Dism /Unmount-WIM /MountDir:R:\test /Commit
製作方法:為免日後忘記,我將製作方法記下。灌完 Windows 7 的 WAIK,在開始功能表內找到捷徑「部屬工具命令提示字元」,捷徑的目標中寫有所開啟 cmd 檔案的路徑 C:\Program Files\Windows AIK\Tools\PETools\pesetenv.cmd。用記事本開 pesetenv.cmd,注意最後三行,PATH= 的後面記載著包含 DISM 的 PATH。兩行 PATH 所記錄的路徑相同(在 pesetenv.cmd 中由左至右優先順序由高至低),都是
%~dp0(pesetenv.cmd 所在資料夾) C:\Program Files\Windows AIK\Tools\x86 C:\Program Files\Windows AIK\Tools\x86\Servicing %path%(Path 系統變數)
DISM 的檔案們位於 C:\Program Files\Windows AIK\Tools\x86\Servicing, 透過比對 Windows 7 DISM 的檔案名稱( Windows\System32\Dism\ ),來確定哪些是 DISM 需要的檔案,將這些檔案單獨複製到一個資料夾中進行測試,共 8 個。在 CMD 中執行 dism 被告知 Wdscore.dll could not be found,再把 wdscore.dll 複製過去。用前面列出的 DISM 命令測試,某個命令會有 error,將上面列出的 PATH 中的檔案都複製過去(不包括 %path%),再測試時命令成功執行,通過將檔案逐步刪除的排除法找到起作用的檔案為 wimgapi.dll(在 C:\Program Files\Windows AIK\Tools\x86)。最後 DISM 的檔案共 10 個。
繼續測試發現 dism mount 命令會有 error,於是想到把 wimmount driver 灌上。瀏覽 wimmount.inf(在 C:\Program Files\Windows AIK\Tools\x86),在 Copy Files 段附近發現複製的檔案是 wimserv.exe 和 wimmount.sys。wimmount driver 需要的檔案共 3 個。
沒有留言 :
張貼留言