欢迎光临
我们一直在努力

Windows 7 x64 SP1 整合光碟制作 (IE11+Hotfix+USB 3.0+.NET 4.6.2)

即便 Windows 7 在 2015/13 结束了主流支援的生命周期,加上微软在 1/21 于西雅图的发表会推出了 Windows 10,似乎也宣告了新时代的来临,只是不可至否的是,Windows 7 依然是目前占有率最高的微软作业系统,远远将 Windows 8/8.1 抛在后头,就算 Windows 10 正式推出后想要靠着免费升级的方式吸引使用者来拉抬占有率,不过要到 2020/1/14 才会中止延伸支援的 Windows 7 要延续 XP 再战十年的口号,应该还是很有机会。

由 于微软的更新有很严重的依存关系,甚至不同版本的浏览器或者 .NET Framework,也会因为使用者环境差异代出不完全相同的更新清单,部份更新更有取代关系,虽然坊间有不少打包好的离线更新包,缩短了下载的时间,只 是在 Windows 7 SP1 之后微软就没有推出新的整合版本,重要更新和选择性更新全部加起来也是超过 150 个以上,即便目前很多人的系统碟改成 SSD,安装所有更新会耗费的时间还是让人无法忽略。

至 于整合项目还是有个人偏好的成份在内,主要是以 Internet Explorer 11 & .NET Framework 3.5.1 为基础,将微软所提供的最新 Hotfix 以及常见 USB 3.0/3.1 驱动程式,整合至 Windows 7 Service Pack 1 x64 版本之中,详细封装内容可参考 Changelog。

这 阵子花了不少时间在安装流程的调整,以及安装更新档的下载来源做简化,由于个人倾向于不做打包的动作,所有的档案还是经由微软的网站下载来减少疑虑,自订 下载清单的部份,最后是透过 Windows Updates Downloader (WUD) 来辅助,下面就是整合光碟制作需要的相关批次档连结,除非有能力自行配置,不然建议还是依样画葫芦,免得处理过程中造成批次档执行过程中出现错误。

一般封装会建议还是使用微软官方所提供的光碟映像,若是不确定手中的版本是否为已经封装过的整合版本或者手边无现成可使用的ISO档,可以参考微软光碟映像下载工具这篇文章使用 Microsoft Windows and Office ISO Download Tool 产生下载连结并直接从微软网站取得光碟映像。

Changelog

更新日期 : 2016/08/19

封装基础更新

  • KB3020369 服务堆叠更新 (April 2015 servicing stack update)
  • KB3125574 便利性汇总套件 (Convenience Rollup)
  • KB3172605 更新汇总套件 (July 2016 update rollup)
  • KB3179573 更新汇总套件 (August 2016 update rollup)

额外封装软体

  • .NET Framework 4.6.2 (含语言套件、更新档)
  • Microsoft Visual C++ 可转散发套件 (含2005~2015)

重要更新未封装

  • KB890830 微软恶意软体移除工具
  • KB915597 Windows Defender 更新
  • KB971033 You-Know-Who

选择性更新未封装

  • KB2952664 Windows 10 推广相关
  • KB3021917 客户经验改进计划 (CEIP),涉及使用者隐私
  • KB3068708 客户经验改进计划 (CEIP),涉及使用者隐私
  • KB3080149 客户经验改进计划 (CEIP),涉及使用者隐私
  • KB3035583 Windows 10 推广相关
  • KB3075249 客户经验改进计划 (CEIP),涉及使用者隐私
  • KB3123862 Windows 10 推广相关
  • KB3173040 Windows 10 推广相关

Windows 7 x64 iSO & 打包相关工具

自订整合工具包包含项目

  • DRIVER : USB 3.0/3.1 驱动程式包
  • windows-7-sp1-x64-cht_20160819.ulz : 自订更新下载清单
  • install.bat : install.wim 整合批次档
  • boot.bat : boot.wim 整合批次档
  • 建立下载更新路径.bat : 建立更新档下载资料夹
  • SetupComplete.cmd : 安装 .NET Framework 4.6.2 & 可转发套件

操作流程

  • 下载自订整合工具包,将压缩档中的所有资料夹以及档案解压缩到 C:\W7SP2
  • 执行 C:\W7SP2\建立下载更新路径.bat 建立下载更新档对应资料夹
  • 下载最新版本 Windows Updates Downloader 并安装
  • 双击 windows-7-sp1-x64-cht_20160819.ulz 载入更新档下载清单
  • 开启 WUD 并依序确认①选取要下载 Update List (日期),②忽略软体预设下载路径 (ulz已经写死下载路径到 C:\W7SP2),③勾选清单内所有下载更新类别

1472709368-5426-2015-09-28-213805

  • 启用 WUD 后,勾选所有项目,按下 Download,会直接从微软网站下载相关更新档
  • 使用 UltraISO 开启 iSO 档,将 \sources\install.wim 复制到 C:\W7SP2
@echo off
if not exist C:\W7SP2\mount md C:\W7SP2\mount
C:\W7SP2\IE11\IE11-Windows6.1-x64-zh-tw.exe /X:C:\W7SP2\IE11\temp
dism /mount-wim /wimfile:C:\W7SP2\install.wim /index:4 /mountdir:C:\W7SP2\mount
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\IE11\Prerequisite
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\IE11\temp\IE-Win7.CAB
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\IE11\temp\ielangpack-zh-TW.CAB
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\IE11\temp\IE-Hyphenation-en.MSU
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\IE11\temp\IE-Spelling-en.MSU
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\IE11\Update\IE11-Windows6.1-KB3175443-x64.msu
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\CONVENIENCE\Windows6.1-KB3020369-x64.msu
dism /unmount-wim /mountdir:C:\W7SP2\mount /commit
dism /mount-wim /wimfile:C:\W7SP2\install.wim /index:4 /mountdir:C:\W7SP2\mount
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\CONVENIENCE\Windows6.1-KB3125574-v4-x64.msu
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\CONVENIENCE\Windows6.1-KB3172605-x64.msu
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\CONVENIENCE\Windows6.1-KB3179573-x64.msu
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\OPTIONAL
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\IMPORTANT
dism /image:C:\W7SP2\mount /add-package /packagepath:C:\W7SP2\NET351
if not exist C:\W7SP2\mount\Windows\Setup\Scripts md C:\W7SP2\mount\Windows\Setup\Scripts
if not exist C:\W7SP2\mount\Windows\Setup\Files\NET462 md C:\W7SP2\mount\Windows\Setup\Files\NET462
if not exist C:\W7SP2\mount\Windows\Setup\Files\MSVC md C:\W7SP2\mount\Windows\Setup\Files\MSVC
copy C:\W7SP2\NET462\*.* C:\W7SP2\mount\Windows\Setup\Files\NET462
copy C:\W7SP2\SetupCo*.* C:\W7SP2\mount\Windows\Setup\Scripts
xcopy C:\W7SP2\MSVC\*.* C:\W7SP2\mount\Windows\Setup\Files\MSVC /S
pause
dism /unmount-wim /mountdir:C:\W7SP2\mount /commit
dism /cleanup-wim
if exist C:\W7SP2\mount rd C:\W7SP2\mount /Q /S
if exist C:\W7SP2\IE11\temp rd C:\W7SP2\IE11\temp /Q /S
  • 等待 WUD 下载更新档完毕之后,点选 install.bat 按下滑鼠右键,选取 “以系统管理员身份执行” (批次档内容如上,要注意的是上面 index 的参数,请依照手边的 iSO 版本进行修改,1~4 分别代表 HOME BASIC、HOME PREMIUM、ROFESSIONAL、ULTIMATE,企业版请使用 index:1)

1472709368-9997-2015-01-25-031917

  • 封装完成后,上面的程式码中多了暂停的动作,这部份是拿来精简最后封装档的步骤
  • 不想精简封装档,可以按任意键完成剩余封装流程,若是想要减少最后 iSO 档的总容量,可以先忽略命令提示字元视窗不要让流程进入下一步,直接跳到下一段
  • 当 封装完成之后,把 install.wim 拉回 UltraISO 的 \sources\ 覆盖原始档,然后另存 iSO 档之后,整合 IE11+Hotfix 的步骤就告一段落,不过建议实际拿去安装电脑之前,可以先透过 VMWare 或者 VirtualBox 来验证整合光碟是否成功
  • 若是想要封装驱动程式到整合光碟之中,请继续阅读 Part 2

精简封装档

原 始的 iSO 档中,其实有不少东西对一般使用者并无太大用处,封装更新档的同时,也会产生备份资讯,相较于原始的 install.wim,整个档案会变成非常的臃肿,不过瘦身方式分成两个阶段,一者是延续前面的暂停动作,在确认封装最后 install.wim 之前移除档案,一者则是在产生 install.wim 之后的压缩比调整
Ps. 不过这边要提醒的是,在封装前的瘦身动作,由于权限限制,部份档案需要取得相关权限才能删除档案,这边会建议透过使用 Unlocker 来简化繁琐的流程。 (教学文)

封装前瘦身

  • 移除对象 : 更新还原档
  • 档案路径 : C:\W7SP2\mount\Windows\winsxs\Backup
  • 注意事项 : 若是不打算还原更新,路径下方档案可以全数移除
  • 移除对象 : 公用范例档
  • 档案路径 : C:\W7SP2\mount\Users\Public
  • 注意事项 : 公用资料夹下方的范例档案全数都可以删除
  • 移除对象 : 桌布档
  • 档案路径 : C:\W7SP2\mount\Windows\Web\Wallpaper
  • 注意事项 : 建议仅保留 Windows 下的桌布档案,其余分项皆可直接移除
  • 移除对象 : 预先搭载驱动程式
  • 档案路径 : C:\W7SP2\mount\Windows\System32\DriverStore\FileRepository
  • 档案路径 : C:\W7SP2\mount\Windows\inf
  • 注意事项 : 预先搭载的驱动程式,种类繁杂,个人会删除 mdm*、prn*
  • 移除对象 : 微软输入法
  • 档案路径 : C:\W7SP2\mount\Windows\IME
  • 档案路径 : C:\W7SP2\mount\Windows\System32\IME
  • 档案路径 : C:\W7SP2\mount\Windows\SysWOW64\IME
  • 注意事项 : 移除 IMEJP10、imekr8、IMESC5 (日文、韩文、简体中文输入法)
  • 移除对象 : 开机语系档
  • 档案路径 : C:\W7SP2\mount\Windows\Boot\EFI
  • 档案路径 : C:\W7SP2\mount\Windows\Boot\PCAT
  • 注意事项 : 移除不需要的语系资料夹,仅保留 en-US 和 zh-TW (不要动到其余档案)
  • 档案路径 : C:\W7SP2\mount\Windows\Boot\Fonts
  • 注意事项 : 移除不需要字型档,包含 chs、jpn、kor_boot.ttf

封装后瘦身

1472709369-6815-2015-01-25-061818

  1. 在完成封装之后,可以透过 GImageX 来调整压缩比例,指定好封装档 install.wim 的路径,并调整对应 index
  2. 设定 install.wim 输出位置以及压缩比率改为 Maximum
  3. 按下 Export 直到输出完成
  4. 同样把压缩好的 install.wim 透过 UltraISO 取代原本在 \sources\ 的档案后另存新档重制 ISO 档

Page 2 : 整合 USB 3.0/3.1 驱动程式

::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::3

會把安全更新和驅動程式封裝拆開來介紹的原因,主要是對象封裝檔案不同,前者為 install.wim,後者則是 boot.wim。

一 般來說,使用 USB 3.0 來安裝作業系統會因為先天頻寬優勢,速度會遠比使用 USB 2.0 來得更有效率,只是 Windows 7 Sp1 並未預先搭載 XHCI 驅動程式,儘管 USB 3.0 硬體向下支援 USB 2.0,但是如果使用者將隨身碟插在 USB 3.0 Port 上頭要來安裝 Windows 7,安裝過程中會出現無法找到光碟機的錯遇訊息,所以自己也會習慣將常見的 USB 3.0 驅動程式一併封裝到 iSO 檔中。

常見 USB 3.0/3.1 驅動程式

  • Asmedia、Etron、Intel、Renesas、TI …. 等,放置位置在 C:\W7SP2\DRIVER\USB3

操作流程

  • 使用 UltraISO 開啟 iSO 檔,將 \sources\boot.wim 複製到 C:\W7SP2
@echo off
if not exist C:\W7SP2\boot md C:\W7SP2\boot
dism /mount-wim /wimfile:C:\W7SP2\boot.wim /index:2 /mountdir:C:\W7SP2\boot
dism /image:C:\W7SP2\boot /add-driver /driver:C:\W7SP2\Driver /Recurse
pause
dism /unmount-wim /mountdir:C:\W7SP2\boot /commit
if exist C:\W7SP2\boot rd C:\W7SP2\boot /Q /S
  • 這 邊要注意的是,index 為 2,加入 /Recurse 是為了自動分析在 C:\W7SP2\Driver 下的所有驅動程式,不需要個別資料夾去指定,另外不建議使用 /ForceUnsigned 去封裝沒有數位簽章的驅動程式,很容易造成安裝畫面還沒進去就會先卡死在 Boot Loading 的畫面
  • 確認要封裝的驅動程式後,點選 boot.bat 按下滑鼠右鍵 “以系統管理員身份執行”

1472709369-7987-2015-01-26-005406

  • 部屬工具會自動分析 C:\W7SP2\Driver 下的驅動程式,不需要分別更新
  • 當封裝完成之後,把 boot.wim 拉回 UltraISO 的 \sources\ 覆蓋原始檔,然後另存 iSO 檔之後,整合 USB 3.0 驅動程式 的步驟就告一段落,若是想要精簡容量,可跳至下文,再回頭重製 iSO 檔
  • .NET Framework 4.6.2 或者其他轉發套件封裝資訊,請繼續閱讀 Part 3

精簡封裝檔

1472709369-6398-2015-01-26-015632

  • 在完成封裝之後,可以透過 GImageX 來調整壓縮比例,指定好封裝檔 boot.wim 的路徑,並調整對應 index (這邊一律為 2,除非是要製作 PE)
  • 設定 boot.wim 輸出位置以及壓縮比率改為 Maximum
  • 按下 Export 直到輸出完成
  • 同樣把壓縮好的 boot.wim 透過 UltraISO 取代原本在 \sources\ 的檔案後另存新檔重製 ISO 檔

Page 3 : 自動安裝 .NET Framework 4.6.2 & 可轉發套件

::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::6

其實先前整理 Windows 7 SP2 的時候就想順便把Microsoft Visual C++可轉散發套件、Microsoft .NET Framework 4.6.2這類常用的 Runtime 給一併打包,畢竟這些軟體幾乎在建構一般使用環境的過程中,幾乎無可避免的需要額外安裝(轉發套件以及.NET Framework封裝流程皆已寫入install.bat,以下內容僅供紀錄)。

封裝軟體

  • 軟體名稱 : Microsoft Visual C++ 2005 SP1 可轉散發套件 (x86)
  • 下載連結 : http://bit.ly/1Z4qsWH
  • 軟體名稱 : Microsoft Visual C++ 2008 SP1 可轉散發套件 (x86)
  • 下載連結 : http://bit.ly/1Z4quOg
  • 軟體名稱 : Microsoft Visual C++ 2010 SP1 可轉散發套件 (x86)
  • 下載連結 : http://bit.ly/1Z4qv4Y
  • 軟體名稱 : Microsoft Visual C++ 2010 SP1 可轉散發套件 (x64)
  • 下載連結 : http://bit.ly/1Z4qvSB
  • 軟體名稱 : Microsoft Visual C++ 2012 Update 4 可轉散發套件 (x86/x64)
  • 下載連結 : http://bit.ly/1Z4qwG7
  • 軟體名稱 : Microsoft Visual C++ 2013 可轉散發套件 (x86/x64)
  • 下載連結 : http://bit.ly/1Z4qzSa
  • 軟體名稱 : Microsoft Visual C++ 2015 可轉散發套件 (x86/x64)
  • 下載連結 : http://bit.ly/1Z4qyxA

封裝方式

嚴 格說起來,.NET Framework 4.6.2 和 Visual C++ 可轉發套件並無法直接封裝在作業系統中,使用的方式是先將相關安裝檔存放在特定目錄中,在作業系統安裝過程中會先安裝檔一併複製,待系統安裝完成後,藉由 自動檢查是否有 SetupComplete.cmd 並執行的機制來到安裝目的。

@echo off
"%WINDIR%\Setup\Files\NET462\NDP462-KB3151800-x86-x64-AllOS-ENU.exe" /passive /norestart
"%WINDIR%\Setup\Files\NET462\NDP462-KB3151800-x86-x64-AllOS-CHT.exe" /q /norestart
"%WINDIR%\Setup\Files\MSVC\2005SP1\vcredist_x86.exe" /Q 
"%WINDIR%\Setup\Files\MSVC\2008SP1\vcredist_x86.exe" /q
"%WINDIR%\Setup\Files\MSVC\2010SP1\vcredist_x86.exe" /q /norestart
"%WINDIR%\Setup\Files\MSVC\2010SP1\vcredist_x64.exe" /q /norestart
"%WINDIR%\Setup\Files\MSVC\2012U4\vcredist_x86.exe" /q /norestart
"%WINDIR%\Setup\Files\MSVC\2012U4\vcredist_x64.exe" /q /norestart
"%WINDIR%\Setup\Files\MSVC\2013\vcredist_x86.exe" /q /norestart
"%WINDIR%\Setup\Files\MSVC\2013\vcredist_x64.exe" /q /norestart
"%WINDIR%\Setup\Files\MSVC\2015\vc_redist.x86.exe" /q /norestart
"%WINDIR%\Setup\Files\MSVC\2015\vc_redist.x64.exe" /q /norestart
rd /q /s "%WINDIR%\Setup\Files"
del /q /f "%0"

使用 SetupComplete.cmd 來自動安裝,可將安裝檔封裝在 iSO 或者 install.wim 內,這邊為了配合其他更新所使用的批次檔,所採用的方式為後者(安裝完畢後,會自動刪除檔案),如果有不想要安裝的軟體,可以自行修改 SetupComplete.cmd 內容。(以下路徑僅為紀錄)

  • iSO 封裝路徑 :\sources\$OEM$\$$\Setup\
  • install.wim 封裝路徑:\mount\Windows\Setup\
赞(0) 打赏
未经允许不得转载:NixonLi博客 » Windows 7 x64 SP1 整合光碟制作 (IE11+Hotfix+USB 3.0+.NET 4.6.2)

评论 2

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    请问你整个ULZ是繁体中文的。文章是转载的能不能更新一下。

    vismini 3个月前 (06-21) Germany 谷歌浏览器 Windows 10 回复
    • @vismini 不好意思官网上没有win7中文的ULZ的包,原文我现在也找不到了.

      nixon li 3个月前 (06-21) 来自天朝的朋友 谷歌浏览器 Linux 回复

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏