//---------------------------------------------//---------------------------------------------//
//------------------------ 缩写：WIT，全名: Windows Install Tool。----------------------------//
//---------------------------------------------//---------------------------------------------//


！！！安装系统属于危险操作，测试时请预先注意备份数据！！！
！！！在桌面重装系统，建议在空机上测试，以免丢失数据！！！


//---------------------------------------------//---------------------------------------------//
//-----------------------------------------/功能特征/-----------------------------------------//
//---------------------------------------------//---------------------------------------------//
- 在WinPE下或者在Win11、Win10、8.1、8、7、Vista、XP等桌面环境安装Windows系统。
- 安装系统的同时，提供一系列的优化操作复选项，以及导入驱动和调用万能驱动助理、驱动总裁（.ISO格式）。
- 支持的映像格式：ESD、WIM、SWM和GHO（包括将这些映像文件放在ISO里面，例如微软原版ISO映像文件）。
- 管理映像文件（支持常见的操作：查看和修改信息、映像校验、映像优化、格式转换、分卷导出、内容更
  新、映像捕获、映像挂载、映像卸载）

- [安装外置组件]说明：
  商务办公=基本安装+办公软件
  平面设计=商务办公+平面设计软件
  休闲娱乐=商务办公+休闲娱乐软件
	
  基本安装：
  iPack_Basic.7z		Win11/10/8.1/8/7
  iPack_7601.7z			Win7
  iPack_2600_Alone.7z	WinXP

//--------------------------------------------//-------------------------------------------//
//--------------------------/窗口热键：详见\Part\Help_Hotkey.txt/--------------------------//
//--------------------------------------------//-------------------------------------------//


//--------------------------------------------//-------------------------------------------//
//-------------------------/命令行参数：详见\Part\Help_Param.txt/--------------------------//
//--------------------------------------------//-------------------------------------------//


//---------------------------------------------//---------------------------------------------//
//-----------------------------------------/已知问题/-----------------------------------------//
//---------------------------------------------//---------------------------------------------//
- 文件路径包含特殊字符时可能会识别错误，比如：【】
- 某些外设可能会导致挂载/卸载映像文件时卡死在操作VHD阶段，比如 ThinkPad X201 的内置读卡器插有TF卡时。

//---------------------------------------------//---------------------------------------------//
//-----------------------------------------/注意事项/-----------------------------------------//
//---------------------------------------------//---------------------------------------------//
- “禁止跨版本更新推送”仅适用于1607或者更高版本的Win10
- 安装通用驱动的前提是使用环境满足驱动总裁或者万能驱动运行的需求
- 映像挂载时，会自动挂载到 VHD（%Temp%\MountVHD.vhd）上，自动确定挂载盘符。
- 映像挂载卸载使用 DISM 及 MOUN，映像导出合并使用 DISM，因为 Wimlib 不支持这些操作。
- 全程无人值守安装时可以自定义用户账户名和计算机名，输入方式为：用户名/计算机名，计算机名省略则为默认。
- 安装系统更新补丁是在部署中阶段执行的；此处安装补丁后不重启，Win10在首次登陆桌面后必须重启一次才能生效。

- 在桌面重装系统时采用的重启环境，优先级如下：
  - 1. \Boot\Boot.wim （留给用户自定义）
  - 2. \Boot\Boot_x64.wim \Boot\Boot_x86.wim（程序自带，推荐使用）
  - 2. EasySetup 量产U盘的 \Sources\Boot_x64.wim \Sources\Boot_x86.wim
  - 3. 与安装源映像文件同级目录的 boot.wim 的第二卷 （使用ISO映像的情形）
  - 4. 安装源映像文件内的 \Windows\System32\Recovery\WinRE.wim
  - 5. 当前系统的 WinRE.wim \Recovery\WindowsRE\WinRE.wim
  - 6. 按照程序的提示，实时手动指定。

//---------------------------------------------//---------------------------------------------//
//----------------------------------------/命令行参数/----------------------------------------//
//---------------------------------------------//---------------------------------------------//
目前命令行仅支持[安装/恢复]模块，示例：
WIT_x64.exe -Source:"D:\3in1_Install.wim" -wimIndex:3 -InstPart:D: -BootRepair:1 -BootPart:Auto -Shut:2 -Activate -Silent
WIT_x64.exe -Search

-Source - 指定映像文件（.esd .wim .gho .sna .tbi .iso），比如：-Source:"D:\Install.wim"或者-Source:"D:\Win11.iso"。
-wimIndex - ESD/WIM指定映像文件的卷号（在.ISO中的也可以，比如原版.ISO镜像），与-Source配合使用。
-BootRepair - 1为勾选“引导分区”复选项，0为不勾选，没有本参数时程序默认勾选，比如：-BootRepair:1。
-BootPart - 指定引导分区，Auto为自动确定引导分区，比如：-BootRepair:Auto或者-BootRepair:H:，无此参数则默认为 -BootRepair:Auto。
-InstPart - 指定目标系统盘符，比如：-InstPart:H:。

-OEMDrv - 指定用户驱动的文件包或者文件夹，比如：-OEMDrv:"D:\W10Drive"或者-OEMDrv:"D:\W10Drive.7z"
-Rescue - 指定作为急救环境的PE包，比如：-Rescue:"D:\10PEx64.wim"

-Activate - 勾选“自动激活/导入公用密钥”复选项（如有效）（与-Source配合使用）
-Unattend - 勾选“全程无人值守”复选项（如有效）（与-Source配合使用）
-SRS - 勾选“注入SRS/USB驱动”复选项（如有效）（与-Source配合使用）
-RST - 勾选“注入英特尔RST驱动”复选项（如有效）（与-Source配合使用）
-HDI - 勾选“导入旧系统驱动”复选项（如有效）（与-Source配合使用）
-TRV - 勾选“禁止跨版本更新推送”复选项（如有效）（与-Source配合使用）
-RTP - 勾选“关闭系统的实时保护”复选项（如有效）（与-Source配合使用）
-UAC - 勾选“静默提升权限”复选项（如有效）（与-Source配合使用）
-UDT - 勾选“转移用户文档”复选项（如有效）（与-Source配合使用）
-NET - 勾选“集成.NET3.5”复选项（如有效）（与-Source配合使用）
-ONE - 勾选“移除OneDrive”复选项（如有效）（与-Source配合使用）
-ORD - 勾选“部署过程理顺盘符”复选项（如有效）（与-Source配合使用）

-Shut - 1为勾选“关机”复选项，2为勾选“重启”复选项，建议配合-Silent参数使用，比如：-Shut:2。
-Search - 启动时打开[映像查找]对话框并查找映像文件（此参数需要单独使用）
-Silent - 自动静默执行（没有-Source参数时本参数无效）

支持最多同时使用20个运行参数，各个参数不分先后顺序！

//---------------------------------------------//---------------------------------------------//
//-----------------------------------------/文件列表/-----------------------------------------//
//---------------------------------------------//---------------------------------------------//
│  
├ 读我文件.txt      
├ WIT_x86.exe       32位版本的WIT主程序
├ WIT_x64.exe       64位版本的WIT主程序
├ WimScript.ini     捕获映像使用的过滤配置文件
│ 
├ x64/x86
│   │   
│  !├ Ghost.exe     GHOST执行主程序
│  !├ GhoPWD.exe    GHO映像解密程序
│   │ 
│   ├ BCDEdit.exe   BCD菜单编辑器
│   ├ BCDBoot.exe   NT6引导写入程序
│   ├ Bootsect.exe  NT6引导扇区处理程序
│   ├ USORT.exe     GHOST分区序号获取（主程序内置）
│   │ 
│   ├ Coreinfo.exe  检测硬件环境是否支持64位指令集（已废弃）
│   ├ 
│   ├ WirelessKeyView.7z  获取无线网络连接的账号密码等信息，解压密码：WKey4567#。
│   ├ 
│   ├ WimBootCompress.ini
│   ├ 
│  #├ fbwf.cfg
│  #├ fbwf.sys
│   ├ 
│   ├ Reg.exe
│   ├ 
│   ├ Snapshot.exe
│   │ 
│   ├ Imagew.exe
│   ├ Ifw.ini
│   │ 
│   ├ wofadk.reg    使Win7支持 Wimboot 和 Compact 的组件
│   ├ wofadk.sys    使Win7支持 Wimboot 和 Compact 的组件
│   │   
│   ├ 7Z            7-ZIP 9.35 Beta，用于释放压缩包、检测万能驱动7/驱动总裁驱动包是否匹配，以及获取文件的SHA256校验值。
│   │   ├ 7Z.dll
│   │   ├ 7Z.exe
│   │   
│   ├ OSFMount     （缺失的话，自动以内置的ImDisk代替）备用的虚拟光驱组件，提供ISO映像挂载支持。
│   │   ├ OSFMount.com
│   │   ├ OSFMount.sys
│   │   
│   ├ Wimlib        Wimlib组件，用于ESD/WIM映像文件释放，以及维护操作。
│   │   ├ libwim-15.dll
│   │   ├ wimlib-imagex.exe
│   │   
│   ├ DISM          DISM组件，用于处理驱动，离线集成更新补丁，离线精简APPx，以及WIM映像文件挂载处理。
│   │   ├ dism.exe
│   │   ├ dismcore.dll
│   │   ├ dismcoreps.dll
│   │   ├ dismprov.dll
│   │   ├ ffuprovider.dll
│   │   ├ folderprovider.dll
│   │   ├ logprovider.dll
│   │   ├ imagingprovider.dll
│   │   ├ wimprovider.dll
│   │   ├ wimgapi.dll
│   │   ├ wimserv.exe
│   │   ├ 
│   │   ├ zh-cn
│   │   │   ├ dism.exe.mui
│   │   │   ├ dismcore.dll.mui
│   │   │   ├ dismprov.dll.mui
│   │   │   ├ ffuprovider.dll.mui
│   │   │   ├ folderprovider.dll.mui
│   │   │   ├ logprovider.dll.mui
│   │   │   ├ imagingprovider.dll.mui
│   │   │   ├ wimprovider.dll.mui
│   │   │   ├ wimgapi.dll.mui
│   │   │   ├ 
│   │   
│   
├ Part
│   ├ NT5_Inject.exe  (仅NT5系统)用于部署过程中配合ES4的配置文件进行扩展处理的工具
│   ├ WIT_Inject.exe  用于部署中阶段运行万能驱动7/驱动总裁的工具
│   ├ Robocopy.exe    执行文档转移时，如系统中缺少该程序的候补。
│   ├ mfc42u.dll      上述 Robocopy.exe 配套的 DLL 运行库文件。
│   ├ 
│   ├ FirstUXBackground.bmp  Win7部署背景图
│   ├ Help_Hotkey.txt        程序热键说明
│   ├ 
│   ├ iPack_bootInst.7z      一键还原组件
│   ├ iPack_WindSLIC.7z      SLIC系统OEM软/硬激活工具
│   ├ iPack_SHIE.7z          右键菜单组件（已并入到 WIT_Inject.exe）
│   ├ 
│   ├ iPack_OrderDrv.7z      理顺盘符组件
│   ├ iPack_Themes.7z        窄边框主题文件（仅适用于Win7）
│   ├ iPack_StartIsBack.7z   开始菜单工具（仅适用于Win8.1）
│   ├ iPack_GenuineTicket.7z  W10/11数字门票以及公用密钥
│   ├ 
│   ├ iPack_TGV.ini     Win11/10 的版本标识，用于禁止跨版本更新推送。
│   ├ 
│   ├ SendEmail.exe     配合“关于”对话框的“系统信息”页面的“反馈”按钮发送反馈邮件
│   ├ Screenshot.exe    配合 SendEmail.exe 在发送邮件时获取截图（WIT的窗口）作为邮件附件
│   ├ 
│  ?├ esdDecrypt.exe    ESD 映像解密程序
│  ?├ esdkey.txt        ESD 映像解密密钥，配合 esdDecrypt.exe 使用。
│   ├ 
│   
├ Boot
│  #├ boot.sdi              WinPE启动组件（来自于无忧论坛的某修改版，体积小而且兼容性好）
│  -├ bootmgr               WBM启动管理器 (来自于 Win11_23H2_10.0.22621.2428，\Windows\boot\PCAT\)
│  -├ bootmgrfw_x64.efi     WBM启动管理器 (来自于 Win11_23H2_10.0.22621.2428，\Windows\boot\EFI\)
│  -├ bootmgrfw_x86.efi     WBM启动管理器 (来自于 Win10_1511_10.0.10586，\install.wim\Windows\boot\EFI\)
│  -├ bootmgrfw_x64.efi.mui WBM启动管理器简体中文语言资源 (来自于 Win11_23H2_10.0.22621.2428，\Windows\boot\EFI\zh-CN\)
│  -├ bootmgrfw_x86.efi.mui WBM启动管理器简体中文语言资源 (来自于 Win10_1511_10.0.10586，\install.wim\Windows\boot\EFI\zh-CN\)
│   ├ 
│   ├ chs_boot.ttf  WBM启动管理器简体中文字体(来自于 Win11_23H2_10.0.22621.2428，\Windows\boot\EFI\Fonts\；缺失时全盘搜索文件夹\Windows\Boot\Fonts\获取，但不一定适用。）
│   ├ wgl4_boot.ttf WBM启动管理器简体中文字体(来自于 Win11_23H2_10.0.22621.2428，\Windows\boot\EFI\Fonts\；缺失时全盘搜索文件夹\Windows\Boot\Fonts\获取，但不一定适用。）
│   ├ 
│  +├ boot_x64.wim  在桌面重装系统的重启环境 (用于UEFI64或者LEGACY的环境)
│  +├ boot_x86.wim  在桌面重装系统的重启环境 (用于UEFI32或者纯32位的环境)
│   ├ 
│   ├ NTDETECT.COM  修复XP引导时可能用到的引导文件
│   ├ NTldr         修复XP引导时可能用到的引导文件
│   ├ Vhdldr        以VHD方式安装XP时用到的引导文件
│   ├ 
│   
├ Drivers
│   ├ Serial_IO_x64.7z  触控板驱动，用于PE环境。
│   ├ SRS_RST_x64.7z    大容量磁盘控制器驱动，用于PE环境（RST驱动同时用于目标系统）。
│   ├ 
│   ├ WinVBlock.7z      以VHD方式安装XP时用到的备选VHD驱动，SVBus.7z缺失时使用。
│   ├ SVBus.7z          以VHD方式安装XP时用到的首选VHD驱动
│   ├ 

? 不需要ESD解密则可以删除
! 不需要GHOST支持则可以删除
- 在处理各种引导问题时需要用到
# 不需要在添加PE到启动菜单以及桌面重装系统则可以删除
+ 在桌面重装系统时用到，机器已连接WIA2020装机U盘、系统环境下或者安装包带有WinRE包时可删除。

NOTE:
  DISM 组件在系统中存在时，可以删除WIT自带的。
  OSFMount 1.5.1018.0 在某些环境下会导致挂载失败，换成 1.5.1015.0 则正常！
  Ghost 和 7Z 组件可以统一使用32位的版本放在 \Part\ 文件夹下（在64位环境下使用时需要32位程序支持）
  Ghost.exe 运行需要的支持文件：sspicli.dll secur32.dll。

//---------------------------------------------//---------------------------------------------//

WIT2020 + Windows PE 10.0.19041.508
%Windir%\System32\wldp.dll							启动出错
%Windir%\System32\TextShaping.dll					界面无文字
%Windir%\System32\Windows.FileExplorer.Common.dll	FILE指令复制文件失败
%Windir%\System32\drvstore.dll						用DISM++集成驱动需要
%Windir%\System32\Input.dll							用DISM对离线映像进行国际化设置时出现87错误

//---------------------------------------------//---------------------------------------------//


//---------------------------------------------//---------------------------------------------//
//-----------------------------------------/引导修复/-----------------------------------------//
//---------------------------------------------//---------------------------------------------//
//修复流程.自动确定引导分区时//-----------------------------
常规安装 MBR：          同盘已激活分区->它盘已激活主分区->同盘FAT主分区->它盘FAT主分区	MBR+NTFS分区则BIOS单激活，MBR+非NTFS分区时双激活。
常规安装 GPT：同盘ESP分区->它盘ESP分区->它盘已激活主分区->它盘FAT主分区					ESP分区则UEFI单激活，MBR+NTFS分区则BIOS单激活，MBR+非NTFS分区时双激活。
VHD/VHDX安装：             它盘ESP分区->它盘已激活主分区->它盘FAT主分区					ESP分区则UEFI单激活，MBR+NTFS分区则BIOS单激活，MBR+非NTFS分区时双激活。

说明：
- 如果引导分区是FAT32/FAT16主分区，则建立EFI/BIOS双引导。
- 搜索它盘遇到存在多个符合条件的分区时，终止执行且不采用：
  - 如果处于单独运行引导修复的状态，则终止执行后弹窗提示。
  - 如果处于系统安装的状态，则在开始之前进行检测，终止执行后弹窗提示。

切记要点！！！
 - 对于系统分区和引导分区分别位于不同的磁盘，甚至多块磁盘交叉引导的情形，必须指定引导分区。
//---------------------------------------------//---------------------------------------------//

//---------------------------------------------//---------------------------------------------//

VHD与VHDX的区别:
VHDX仅支持WIN8及更高的系统，VHD用于WIN7及更高的系统。
VHDX比VHD多出的特性是：1.支持从异常关机中恢复 2.支持4K对齐 3.支持TRIM后两者主要针对SSD。

