无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 870886|回复: 9112
打印 上一主题 下一主题

[原创] (2022-02-02 更新) Re:WIN10XPE - 从零开始构建的全功能PE

    [复制链接]
跳转到指定楼层
1#
发表于 2018-11-12 23:36:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 slore 于 2022-2-3 14:47 编辑

使用wimbuilder2构建了一个
完全从系统install.wim提取所需文件,可构建不包含任何非系统文件(绝对纯净)的,包含以下组件的Windows PE(截图为RS5版本)。

  • [40MB]原生Windows Explorer外壳(RS5以上支持暗黑主题)
  • [8 MB]DWM服务支持
  • [3 MB]MMC(含设备管理器,磁盘管理器,服务管理器,文件共享)
  • [35MB]原生简体中文(拼音,五笔),繁体中文,韩语输入法,日语输入法
  • [3.8MB]BitLocker
  • [7 MB]原生搜索功能 (2018-11-18)
  • [0.4MB]基本显示器驱动,显卡驱动 (2018-11-18)
  • [33MB]网络支持 (2018-11-18)
  • [72MB]WOW64支持(x64环境下可运行x86程序) (2018-12-05)
  • [26MB]Internet Explorer 11(x64 & x86) (2018-12-05)
  • Windows Media Player 媒体播放器 (2020-03-03)
  • [15MB]远程桌面 (2019-01-02)
  • [6 MB]MTP支持(支持手机连接传输文件) (2019-01-02)
  • RNDIS功能(USB连接手机可使用手机共享网络) (2019-09-14)
  • PPPoE拨号 (2020-03-03)
  • [29 MB]Administrator账户登录 (2019-01-24)
  • Administrator与SYSTEM账户间切换 (2019-10-05)
  • [3 MB]画图,Windows 图片查看器 (2019-01-30)
  • [1.8 MB]VC++运行库 (2019-03-20)
  • [140 MB].NET Framework (2019-04-18)
  • [1 MB]系统提示音 (2019-04-18)
  • 麦克风 (2020-05-05)
  • 摄像头 (2021-08-08)
  • [3.5MB]SnippingTool 截图工具 (2019-04-21)
  • 打印组件 (2019-06-21)
  • 蓝牙组件 (2021-04-04)
  • USB设备管理(原生USB弹出支持) (2019-06-21)
  • 远程桌面服务(外部远程桌面连接PE)  (2019-06-21 [RS5]、2021-06-06 [最新21H1])
  • 支持SMB1.0 (2019-07-08)
  • 网络发现(可访问相同网络中的计算机资源) (2019-07-08)
  • 网络和共享中心 (网卡设置+网络托盘图标) (2019-09-01)
  • Windows Installer(MSI) (2019-09-01)


支持制作RS5, 19H1, 19H2, 20H1, 20H2, 21H1最新版的x86,x64 PE。
运行环境需求:支持HTA,VBScript/JScript,以及Dism命令可加载wim镜像。
                    (正常Windows 7及以上系统,和Win10系统自带winre.wim环境均满足)






特点:
  • 你有install.wim就可以从开始构建对应版本PE(支持各版本,各语言,含最新预览版)
  • 只需要极小的工程附件即可,省去不必要的网络消耗(上传/下载)
  • 补丁详细分类,且由批处理语法构成,任何人可以明白某个功能需要做什么修改(添加了哪些文件,修改了哪些注册表等)
  • 一些常用的习惯选项可在界面选择,满足不同人习惯要求(例如: 显示/不显示 快捷方式箭头)
  • 每次都可以根据工程生成新的PE,通过对极小的工程文件管理,就可以无限回溯,重复对PE进行修正


内置的第三方工具:
PECMD, WinXShell, Classic Shell, StartIsBack, StartAllBack, PENetwork, 7-Zip, 小小输入法, HotSwap!

外置资源包包含的第三方工具:
  DisplayX, SuperPI, Notepad3, Explorer++,
  BOOTICE, CPU-Z, Dism++, Everything, NTPWEdit, WinNTSetup, SumatraPDF, Chrome

Office 2007(演示包,请自行替换完整外置包), PotPlayer(演示包,请自行替换官方安装程序)

提醒: 你需要选择【支持32位应用程序运行】选项,来支持一些第三方应用程序的安装。
提醒: 使用浅色主题时,StartIsBack开始菜单主题最好选择Win10皮肤。


直接下载地址: https://slore.lanzoux.com/b00z5zy6b
如果无法访问请尝试
https://lanzoux.com/b00z5zy6b

WimBuilder2-Full.v2022-02-02.7z (74.1 MB) MD5:40aba59b4ea44b401e46a7ace54880aa

## WimBuilder2 v20222.02.02这是一个主要更新。添加和改善了以下内容:

* 改善 对Windows 11系统组件功能完善。 (感谢 @我是小青蛙)
* 新增 俄语资源文件(程序界面)。 (感谢 @Ruslan)
* 更新 界面选项的匈牙利语资源。 (感谢 @La_Valse)
* 改善 支持在我的电脑中对全盘进行搜素。 (感谢 @xmzhqw)
* 更新 PENetwork, Explorer++ 脚本。 (感谢 @Ruslan)
* 新增 Defraggler 脚本。  (感谢 @Ruslan)
* 修复 VC++运行库WinSxS文件添加路径不正确的问题。 (感谢 @Ruslan)
* 改进 快速登录Administrator账户。
* 修复 我的定制(前置)的执行顺序靠后的问题。
* 新增 GetLocaleId 宏命令。
* 改进 Updater更新脚本, 已经下载的更新文件,不再重复下载。

* 新增 StartAllBack 开始菜单。
* 更新 WinXShell 至 v4.6.4
        修复 因Defraggler的外壳菜单导致崩溃的问题。
        新增 俄语资源文件(wxsUI界面)。 (感谢 @Ruslan)

* 其他 细节更新。

WimBuilder2-Full.v2021-11-11.7z (64.6 MB) MD5:4f238481ff2065bbf2501d067b390c75

## WimBuilder2 v2021.11.11
这是一个常规更新。添加和改善了以下内容:

* 改善 网络支持。
        移动 PPPoE选项至【网络】。
        添加  【网络安全:LAN管理器身份验证级别】选项。使得可以正常连接SMB/CIFS服务。  (感谢 @gasun 反馈问题,并提供解决方法)
* 改善 远程桌面连接选项。解决远程桌面连接访问时,可能造成的认证错误。  (感谢 @gasun 反馈问题,并提供解决方法)

* 更新 WinXShell 至 v4.6.0











======================================================
贡献与支持

如果你会批处理,js脚本,欢迎为WimBuilder2提供功能改进、代码修补,分享你的补丁;
如果你不会编程,也欢迎提供bug反馈和献计献策;
如果你对某个版本,某个功能,知道如何手动补充修改文件及注册表,也可以分享出来。
如果你喜欢这个项目,你可以Star一下(https://github.com/slorelee/wimbuilder2)。
也欢迎你对WimBuilder2项目进行捐助以支持此项目发展。

支付宝


微信


======================================================
WimBuilder2对WIN10XPE工程进行构建的,设定界面:



理论上支持所有Win10版本(不限语言,架构),但因时间有限,计划维护3个版本的对应(前一个正式版,当前最新,快速通道的下一个版本)。
不提供成品PE。

第一版存档保留
WimBuilder2_with_WIN10XPE.zip (2.29 MB, 下载次数: 7419)

======================================================
关于最新开发版

1. 从github下载最新开发版代码
https://github.com/slorelee/wimbuilder2/archive/master.zip
2. 从主题附件,或者https://github.com/slorelee/wimbuilder2/releases页面,下载包含vendor文件夹的最新完整版。
3. 只需将vendor文件夹复制至【步骤1】解压目录即可。

======================================================
另外可能打算做一个SlimPE,包含80~90%的相同功能,但体积只有1/3或一半的PE。(能用更小巧的第3方实现的功能,不采用系统原生组件)
(感觉功能全的维护PE约160MB(200MB内),带网络的约260MB(350MB内)。)





ES5_fix.zip

993 Bytes, 下载次数: 694, 下载积分: 无忧币 -2

点评

精品  发表于 2024-3-11 20:55
能否搞个用WimBuilder生成Win7 SP1 x86 PE的工程?  发表于 2020-6-16 22:19
这个项目非常好,谢谢!就喜欢纯净的PE!  发表于 2020-6-16 22:19
这个选择加载文件的时候,弹出的文件选择对话框能不能默认为镜像文件(*.wim),而不是所有文件呢  发表于 2020-3-5 18:24
2019LTSC原版镜像,基本默认配置制作,VM测试,转圈后蓝屏  发表于 2020-1-8 20:03

评分

参与人数 146无忧币 +573 收起 理由
yyz2191958 + 2 很给力!
装机猿 + 5 赞一个!
SROOO + 5 很給力!
孤帆远影 + 1 赞一个!
FKUEPENG + 1 很给力!
inbashion + 1
FOXL + 1 <font style="vertical-align: inh
pyhlovexdm + 5 很给力!
天工科堂 + 1 很给力!
legend + 1 很给力!
xuziyi + 1 赞一个!
w8yug + 1 很给力!
ccccc5321c + 1
小布丁 + 5
fogang + 1 赞一个!
sycdzp + 1 很给力!
2011rmq + 5
3735 + 5 很给力!
2012sinkr + 5 很给力!
whgang1029 + 1 很给力!
lookerJ + 5 很给力!
2012_maxbo + 5 很给力!
htt_rd + 5 強大!
wjzj + 5 很给力!
994956737 + 1 很给力!
2010hook + 5 越来越好
wh07027 + 5 很给力!
afen + 5
kohwei + 5 很给力!
nokia007 + 5 很给力!

查看全部评分

来自 2#
 楼主| 发表于 2019-3-4 22:37:34 | 只看该作者
本帖最后由 slore 于 2020-4-5 10:33 编辑
缘起缘灭 发表于 2019-3-4 21:37
做一个教程就好了,工具也不是很明白.想要个教程

使用演示Gif动图:




下载地址: http://hello.wimbuilder.world/
下载地址: https://github.com/slorelee/wimbuilder2/releases/

更新记录

WimBuilder2 v2020.04.04

WimBuilder2-Full.v2020-04-04.7z (48.55 Mb) MD5: 9309f10a4137020b810c90bf8ef8279c


这是一个主要更新。添加和改善了以下内容:

  • 新增 手动卸载 命令。便于构建后,直接进行二次修改省去挂载时间。
  • 新增 导入 aria2 下载工具。支持第三方工具从官方下载。
  • 新增 _V-64, _V_64 环境变量。便于匹配官方安装文件名。
  • 新增 各存储设备上外置资源加载(可设置为手动加载)。
  • 改善 解压工具从7za.exe改为7z.exe,支持解压更多文件格式。
  • 新增 App.cmd 宏命令。支持下载第三方软件。
  • 新增 外置资源包。
  •        可改变壁纸,程序关联,注册表优化。
  •        直接绿色软件,官方安装包,自制精简压缩资源。
  •        可选择放置在X盘,内置模式;放置到ISO光盘,只读模式;放置到其他驱动器,便携模式。
  • 改进 AddFiles宏。可指定提取install.wim文件到指定目录(特定软件的精简组件打包)。
  • 新增 是否在桌面显示回收站选项。
  • 修正 不设定开始菜单时,默认StartIsBack和ClassicShellMenu都安装的问题。
  • 新增 浅色主题设定。
  • 修复 强力精简导致,资源管理器中复制文件时发生错误问题。 (感谢 @王乐2518)
  • 改进 网络发现不需要完整SOFTWARE注册表。
  • 修复 英文PE的文字显示为斜体问题。 (感谢 @hikari_calyx)
  • 改进 网络发现支持不再需要完整的SOFTWARE。 (感谢 @Lightning)
  • 新增 网络和共享中心“设置新的连接或网络”向导功能。 (感谢 @Lightning)
  • 更新 WinXShell.exe 至 v4.3
  •        LUA加载器:立即显示设备与打印机,蓝牙设备可快速直连。
  •        外壳:支持自定义主题配色(内置: 蓝色,深色和浅色)。
  •              直接接管系统音量和WIFI托盘指示图标,支持系统原生右键菜单。
  •              开始菜单默认显示网络连接菜单,可直接修改适.配.器属性,拨号连接。
  •              我的电脑属性默认显示系统属性界面。
  •              -luacode简化为-code选项。
  •              新增 wxs-ui, wxs-open 短命令协议接口。
  •        UI组件:声音,WIFI,日历新增浅色主题风格。 (感谢 @826773297 提供浅色图标资源)
  •                WIFI 组件新增PPPoE拨号连接,增加滚动条。
  •                个性化设定界面,增加更多颜色相关设定选项。(Explorer.exe外壳有效)
  • 更新 StartIsBack 至 v2.9
  •        修复20h1之后无法使用任务栏跳转菜单的问题。


外置资源包包含:
  NTBOOTAUTOFIX, SetupXP, UEfix, Notepad3
  BOOTICE, CPU-Z, Dism++, Everything, NTPWEdit, WinNTSetup
  SumatraPDF, Office 2007, PotPlayer







WimBuilder2 v2020.03.03

WimBuilder2-Full.v2020-03-03.7z (22.35 Mb) MD5: 0fafbd5244ef87c87cfe57b9570c76c1

这是一个常规更新。添加和改善了以下内容:

  • 改进 强力精简时,保留Windows 任务管理器 所需的必要文件。
  • 修复 高分屏环境,定制界面无法正常显示的问题。
  • 新增 【设置】页面,可通过界面更改表示语言,主题,DPI设置。
  • 新增 手动卸载wim构建选项,以便直接进行二次修改,节省构建时间。
  • 新增 Windows Media Player 组件
    • Windows Media Player 组件需要使用完整的SOFTWARE,不需要依赖声音支持补丁。
  • 改进 对20H2预览版支持。补充字体文件修复显示问题。
  • 新增 ISO加载时,显示加载进度条选项。
  • 新增 桌面图标大小选项。
  • 新增 Classic Start Menu 开始菜单(Classic Shell v4.3.1)。
  • 新增 PPPoE拨号。
  • 改进 FBWF缓存大小,支持 128GB
  • 新增 预创建Administrator用户配置文件选项。
    • 解决使用WES的fbwf.sys时,系统无法自动创建用户配置文件的问题。
  • 改进 对20H2预览版支持。多用户登录功能适配最新预览版(10.0.19569.1000)。
  • 更新 vendor\WinXShell。
    • 改进 外壳守护函数逻辑(loader_helper.lua),避免文件资源管理器无限打开问题。
    • 修复 外壳重启后,UI_WIFI的网络托盘状态表示不正的问题。
    • 新增 tr-TR 土耳其语资源(UI组件)。









WimBuilder2 v2020.01.01

WimBuilder2-Full.v2020-01-01.7z (19.9 Mb) MD5: ea3c59e6a338c2d93424df09e9264002

这是一个主要更新。添加和改善了以下内容:

  • 修复 繁体输入法不可用问题。 (感谢 @2012bear1alex1 测试与反馈)
  • 新增 输入法新增繁体输入法(注音,速成,仓颉)选项。
  • 修复 强力精简选项导致无线网络不能正常问题。
  • 改进 对20H2预览版支持。补档修复IE闪退问题。 (感谢 @James)
  • 调整 lua 函数(LINK, PinToTaskbar, PinToStartmenu)到WinXShell\lua_helper\shell_helper.lua。
  • 调整 默认桌面,任务栏,开始菜单图标创建为自定义批处理生成(可删除)。
  •    `Projects/WIN10XPE/_CustomFiles_/MyCustom/Last/_CustomDesktopItems.bat`
  • 改进 使用 构建(日志) 方式时,将保留历史构建日志文件。 (感谢 @Lancelot)
  • 新增 "预设另存为 ..." 按钮。
  • 调整 界面的显示样式。
  • 改进 wim文件卸载时,清理挂载点。 (感谢 @星体投射)
  • 新增 删除\sources文件夹精简选项。
  • 修复 SYSTEM用户无法使用开始菜单关机按钮问题。
  • 修复 当自动登录的确认时间设置为0秒时,无法正常登录问题。 (感谢 @Lancelot 测试与反馈)
  • 改进 启用Administrator帐户时,提示对install.wim的版本要求。 (感谢 @Lancelot 测试与反馈)
  • 修复 非中文系统下查看"我的主题"定制选项时出错问题。 (感谢 @Lancelot 测试与反馈)
  • 新增 主题设置选项(`$wb_settings['theme'] = '<主题名>'`@ config.js )。
  • 新增 `snow`主题(v2019.12.12版彩蛋),`picture`主题(静态背景图, 不占用CPU)。
  • 新增 `春节(the_spring_festival)`主题(http://hello.wimbuilder.world 市场下载)。


v2019.12.12

这是一个常规更新。添加和改善了以下内容:

  • 改进 强力精简处理将优先执行,避免删除其他功能新增的文件。
  • 改进 强力精简时,保留启用网络和Administrator用户必要文件。 (感谢 @Lightning)
  • 改进 清理不可使用的服务的注册表项目。
  • 修复 弹出USB设备时,设备名显示不正确问题。(感谢 @Lightning)
  • 改进 高兼容性选项。
  • 修复 当定制选项中存在逗号(,)时,构建页面显示的信息不正确的问题。
  • 改进 命令行模式新增等待(--wait)构建结束参数。
  • 改进 内置预设名将根据系统语言显示。
  • 新增 "当前"内置预设,将自动保存当前的定制设定。
  • 改进 启用Administrator用户时,不再需要完整的SOFTWARE注册表,大幅减少注册表文件体积。
  • 改进 驱动签名校验文件处理对老版本的支持(14393 ltsb)。 (感谢 @liuzhaoyzz 测试与反馈)
  • 修复 使用WinXShell作为外壳时,复制文件不弹出覆盖确认提示窗口的问题。 (感谢 @星体投射)
  • 修复 符号链接文件无法访问的问题。 (感谢 @星体投射)
  • 修复 当构建时间过长时,页面弹出脚本运行缓慢的对话框的问题。
  • 改进 提供运行系统语言变量,界面语言与系统不符时,个别选项的默认值将使用英文资源,确保可以正常构建。
  •        (繁体中文系统下,可以通过在config.js中设置语言为zh-CN来使用简体中文界面。)


v2019.11.11 更新(最新下载地址点此链接)

WimBuilder2-Full.2019-11-11.7z(18Mb) MD5: 6e71aacf9ad288c2bc6b713e2ea9a659

百度网盘:https://pan.baidu.com/s/1F3O7VS6yiSqOT6ET8YtNmA
提取码:y0wq

http://lancelot.theoven.org/Slore/WimBuilder2-Full.2019-11-11.7z

这是一个主要更新。添加和改善了以下内容:


* 新增 Ghost15支持补丁。(_CustomFiles_\MyCustom_Samples\Requirements_Ghost15.bat)  (感谢)
* 修复 使用zh-TW系统源构建时,安全精简选项有效后无法登陆Administrator用户的问题。
* 修复 构建老版本(<17763)系统源时,部分系统文件没有提取问题。
* 修复 构建老版本系统源时,文件属性无法弹出问题。
* 新增 _CustomFiles_\MyCustom\Last目录,简易补丁可以放置在此目录,各补丁main.bat结束后调用。
* 新增 _NavPaneShowAllFolders.bat 文件夹选项设置。
* 新增 _NavPaneHideLibraries.bat 文件夹选项设置。
* 修复  无法从系统中复制文件到手机的问题(MTP)。 (感谢 ku588)
* 新增 精简选项(使用精简的imageres.dll)。
* 新增 _FileExplorerInSeparateProcess.bat,外壳与文件资源管理器作为独自进程运行。
* 改进 网络组件对老版本系统的支持。(感谢 liuzhaoyzz)
* 新增 _HighPerformancePowerScheme.bat,电源管理中使用高性能模式。
* 新增 _CustomVisualEffects.reg,使用自定义视觉效果。(感谢 沉默凌神)
* 修复 StartIsBack在最新预览版中导致外壳程序崩溃的问题。
* 更新 设备与打印机组件,打印机功能支持到最新版。 (超级感谢 Noel :+1: )
* 新增 命令行接口,可通过自动构建,详细参数请输入--help进行查看。
* 改进 自定义补丁可制作复杂选项。
* 新增 7-zip界面,可以设置扩展名关联。
* 修复 不勾选网络支持时,防火墙没有禁用问题。
* 新增 _Assets_\style.css 文件,支持各补丁界面共同的式样定义。
* 新增 ImDisk虚拟磁盘驱动。
* 改进 多会话模式下对外壳进程进行守护。
* 新增 删除 wbem\Repository 精简选项。
* 新增 _CustomFiles_\_CustomISO_.bat。提供创建ISO时,PreISO,MakeISO,PostISO三个阶段的自定义接口。(_PreISO_.bat 已废弃)
* 新增 ISO设置界面,可以设置是否提示 "Press any key to boot from CD or DVD."。
* 改进 刪除 无效的BitLocker菜单。
* 改进 RNDIS功能在某些设备下无法正常工作的问题。(感谢 fish2006)
* 更新 【补丁】菜单改名为【定制】。
* 修复 在Administrator用户下访问资源管理器时,目录展开卡顿的问题。
* 其他细节更新。


v2019.10.10 更新
这是一个主要更新。添加和改善了以下内容:

  • 新增 LinkToDesktop, LinkToStartMenu, PinToStartMenu, PinToTaskbar 宏命令。
  • 新增 Startup\BeforeShell 目录接口,此目录下的脚本将在外壳程序启动前运行。
  • 新增 【安全精简】 选项,刪除字体,其他国家地区键盘布局,迁移工具等不影响其他组件的系统文件。
  • 新增 【移除ieframe.dll】选项。
  • 新增 【移除WinRE系统故障修复程序(X:\sources)】选项。
  • 修复 20H1微软内置输入法 无法显示候选文字问题。 (感谢 立邦电子)
  • 新增 对DRIVERS注册表处理选项,可自动识别加载系统自带驱动(如MTP,网卡驱动等)。
  • 新增 RNDIS功能,USB连接手机可使用手机共享网络。 (感谢 saiz)
  • 更新 同步WIN10XPE-2019-09-18更新内容。
  • 修复 启用MSI功能时,无法进行管理员帐户登录问题。
  • 改进 补丁选项默认值可在补丁目录中定义,不需要再各个预设清单中更新(补丁独立性增强)。
  • 添加 我的主题(_CustomFiles_\MyTheme)补丁例子,可自定义不同主题式样,壁纸,音效,开机音乐等。
  • 改进 管理员用户登录,及启动初始化脚本分解,使得不同启动管理器共用。
  • 新增 自定义管理员名选项。
  • 新增 资源精简处理例子(za-Slim\SlimResources),移除Display.dll, themecpl.dll且不影响功能。
  • 更新 使用系统自身机制解决20H1之后无法管理员用户无法加载用户设定问题。
  • 修复 20H1之后BitLocker解锁菜单无法自动识别问题。
  • 修复 打印机组件无法正常使用问题。(<=17763的版本, 可以使用内置和第三方打印机)
  • 修复 20H1之后文本文档无法直接打开,以及没有新建文本文档问题。
  • 更新 vendor\WinXShell为4.2版本。
  • 新增 随WinXShell 4.2新增的Session管理功能,实现多用户自由切换功能(SYSTEM<=>管理员帐户)。
  • 新增 随WinXShell 4.2更新,新增【文件及文件夹选项】设定(显示/不显示隐藏文件,显示/不显示已知扩展名)。
  • 新增 WinXShell设置页面。(启用UI_Volume,启用UI_WIFI选项)
  • 新增 系统托盘网络,声音图标显示选项。
  • 改进 老版本Win10(v1607 长期服务分支 (LTSB) 14393)构建支持。(感谢 liuzhaoyzz 测试与反馈)
  • 更新 vendor\StartIsBack为2.8.9版本。
  • 新增 doc\History.txt本说明文件。



v2019.09.01 更新
  • [更新]适配20H1最新版本(感谢hsmy, foxfirefox提供文件列表)
  • [更新]ISO支持BIOS+UEFI启动
  • [新组件]添加 网络->网络和共享中心(网络连接(网络适.配.器设置) 与 网络状态托盘图标)
  • [新组件]添加 微软Windows Installer(.msi文件)支持 (已知会导致Admin账户无法登录, SYSTEM下可用)
  • [更新]同步 Win10XPE_2019-07-20
  • [更新]第3方工具支持, 可安装QQ官方安装程序
  • [改进]MTP支持将登录后自动加载, 去除桌面mtp_support.bat文件
  • [改进]更新RegCopyEx, AddFiles宏
  • [vendor更新]StartIsBack升级到2.8.8


v2019.07.08 更新

* [组件更新]启用SMB1.0
* [组件更新]【网络】中添加【启用网络发现】选项,启用后可以在我的电脑中, 网络 看到其他机器(及本机)
* [组件更新]修复不选择【搜索】组件时,打开对话框无法过滤文件扩展名问题
* [工具更新]工程中除了PECMD.exe其他程序都移动到vendor目录,可下载github上的开发最新版wimbuilder2-master.zip + vendor 目录 得到最新开发版本
* [工具更新]preset预设清单动态加载,自己添加的预设清单将可以选择。新增full清单,选择全部组件。原lite4改名为lite。

2019-06-21 更新
  • * 更新:20h1最新版本drvinst签名修正
  • * 更新:20h1最新版本32位程序在64位环境文字无法显示问题 (感谢 nf17b 补充缺少文件)
  • * 新增:TextReplace宏支持正则表达式
  • * 新增:新增打印组件 (hhh333的清单)
  • * 改善:直接使用第3方程序的EXE,7z等官方直接下载文件(StartIsBack,7-Zip,PENetwork),方便(自动)更新
  • * 改善:将第3方程序安装包移动到WimBuilder2\vendor目录,可多个工程共享
  • * 新增:Extract2X, V2X, VGetFile宏命令,用于从Vendor目录提取文件到wim中
  • * 新增:Admin用户选项做成单独设定页面,支持密码验证
  • *  新增:当不选PECMD时,启用新的lua加载器
  •     * 支持高版本固定程序到任务栏,开始菜单
  •     * 双用户登录,切换交互
  •     * 多国语言支持
  •     * 增强型可自由扩展link'pin'exec命令
  • * 新增:LINK宏命令,用于创建快捷方式(自动适配PECMD,LUA加载器)
  • * 新增:RunBeforeShell宏命令,用于在外壳程序加载前执行(自动适配PECMD,LUA加载器)


v2019.03.19 更新(含PECMD,StartIsBack,WinXShell,PENetwork)
* [新增]VC++运行库(x64+WOW64支持可运行Office2007)
* [新增]补丁树右键添加"打开文件夹"菜单
* 19H1,20H1 Administrator帐户登录完善(yamingw)
* IE 提供仅x64位选项(优化WIM体积),主页设定
* IME输入法语言栏与内建输入法分离
* 测试极点五笔,小小输入法,搜狗输入法等3方输入法可直接安装。
(安装exe都是x86版本,暂时需要WOW64支持,所以独立功能包未制作)
* 添加WinXShell RC4.0 - 任务栏设置界面,分辨率设置,任务栏日历(单击),时间和日期设置(双击)
* 细节更新(根据yamingw的反馈)
* 整体功能结构优化
* 添加版本信息
* 输出构建花费时间
* 添加预设定义文件(WIN10XPE\_Assets_\preset),可设置不同功能选项组合的默认设置
  复制default.js为custom.js自行修改
  未来版本,界面提供预设清单选项


2019-02-05 更新:
  • 完善Windows 19H1支持(IE(yamingw), 输入法指示器)
  • 修复MTP驱动无法复制的问题(19H1的MTP支持功能相同)
  • MTP支持补丁优先采用yamingw的mtpHelper.sys驱动文件
  • 修复笔记本电源指示图标,及启用管理员账户功能(yamingw)
  • drvinst.exe驱动签名修改采用JFX的通用补丁工具(改进,无功能变化)
  • 新增HyperV.cmd测试命令,可以使用Hyper-V虚拟机测试ISO(powershell来自noel)
  • 添加法语资源文件(来自noel)


2019-01-30 更新
  • Windows 19H1支持
  • 添加Admin切換时的背景图片设定
  • 添加 画图Windows 图片查看器
  • 增加_CustomFiles_文件夹,壁纸,PECMD.ini, PENetwork.ini等配置文件将优先使用此处的文件
  • (暂时仅 wallpaper.jpg, screen.jpg,配置文件还没处理)
  • 新建菜单 添加文本文档和文件夹




2019-01-24 更新
  • 启用Administrator账户的最小依赖 补丁(不使用explorer也可以使用, 需要PECMD补丁)
  • 整理出DWM的最小依赖补丁(不使用explorer也可以使用)
  • 其他细节调整
  • 整合nonameman的韩语资源(ko-KR.js)


2018-11-12 更新:
  • StartIsBack开始菜单 补丁
  • “轻松访问”的系统组件:屏幕键盘,放大镜,讲述人 补丁


补丁制作教程见21~28楼,最终工程附件在#29楼。


如何自己制作的功能补丁?
请参考 #315,#316,#317楼 说明

每次打开, 选项变成默认选项, 如何保存当前的设定?
v2019.12.12版本将自动保存当前设定。

v2019.12.12之前的版本,请按以下方法手动制作【预设】文件。
http://bbs.wuyou.net/forum.php?m ... 0545&fromuid=166812

命令行参数
  1. Usage: WimBuilder.cmd [-h|--help] [<Options>...]

  2. <Options>
  3.    --verbose
  4.    --build|--build-with-log
  5.    --source-folder FOLDER|DRIVE
  6.    --source-wim SOURCE_WIM_FILE
  7.    --source-index INDEX
  8.    --base-wim BASE_WIM_FILE
  9.    --base-index INDEX
  10.    --project PROJECT
  11.    --preset PRESET
  12.    --make-iso
  13.    --close-ui (the option will append --wait option by default)
  14.    --wait
  15.    --nowait

  16. Examples:

  17.    WimBuilder.cmd --build --make-iso --close-ui
  18.    WimBuilder.cmd --source-folder I: --source-index 1 --build --preset full --make-iso --close-ui
  19.    WimBuilder.cmd --source-wim "D:\win10v1903\sources\install.wim" --source-index 4 --build --preset full --make-iso --close-ui
  20.    WimBuilder.cmd --source-folder H: --source-index 1 --base-wim "D:\BOOTPE\boot.wim" --preset lite --build-with-log --make-iso
复制代码


点评

谢谢分享!  详情 回复 发表于 2022-3-31 21:12
这个项目非常好,谢谢!就喜欢纯净的PE!  发表于 2020-6-16 22:16
能否搞个用WimBuilder生成Win7 SP1 x86 PE的工程?  发表于 2020-6-16 22:13
能否搞个用WinBuilder生成Win7 SP1 x86 PE的工程?  发表于 2020-6-16 22:12
大神,请教下工具生成的PE登录后自动开启数字小键盘是如何实现的?  详情 回复 发表于 2019-12-16 17:38

评分

参与人数 3无忧币 +15 收起 理由
三北豆酥糖 + 5 赞一个!
edison_2008 + 5 赞一个!
palm777qqq + 5

查看全部评分

回复

使用道具 举报

来自 4#
 楼主| 发表于 2019-4-16 22:27:34 | 只看该作者
本帖最后由 slore 于 2019-10-26 19:27 编辑
brook 发表于 2019-4-15 22:02
楼主厉害,什么时候工程发布正式版呢,感觉这个已经接近正式版了,小白不懂,只觉得这个工程是无忧里第一大 ...

谈不上啥正式版,就是有时间更新下,把反馈的问题修正掉。都是文本文件组成,也不用编译。
不过确实是一个人,精力也有限,有些想法都推后了,比如一些第3方工具文件,每次打包很烦,
想了自动更新的方法,不过还得要个文件服务器,建站啥的。想了想还是附件分包省事省钱。


不喜欢频繁更新,修复了差不多问题,或者有重要修正,或者2,3周才会更新下附件。(虽然比其他PE小多了,但是分包还是挺烦的)

待完成清单:
  • 【反馈问题】选择ISO解压出来的文件夹而非挂载驱动器盘符时,无法生成ISO镜像 (已解决 v2019.04.18)
  • 【反馈问题】精简补丁与【搜索】功能顺序不正 (已解决 v2019.04.18)
  • 【反馈问题】精简补丁导致输入法无法在控制台下输入 (已解决 v2019.04.18)
  • 【功能需求】右键节点提供【编辑 main.bat】,【编辑 last.bat】功能 (已实现 v2019.04.18)
  • 【功能需求】浅色主题设置 (>19H1) (没时间做浅色表)
  • 【功能需求】X盘支持4G以上设置 (已实现 v2019.04.18)
  • 【功能需求】增加控制台模式输出大小(窗口超出屏幕问题未解决,_CustomFile_\main.bat自己设置?)
  • 【反馈问题】默认系统桌面下可能导致Dism挂载失败 (需要追加检查提醒)
  • 【反馈问题】中文文件夹下,wimlib命令可能出错 (需要追加检查提醒)
  • 【反馈问题】某些PE下,Dism命令无法挂载 (需要追加检查提醒)
  • 【计划功能】动态加载预设列表(读取preset的文件列表,支持中文)
  • 【计划功能】_CustomFile_ 做成【私人制定】,支持 main.bat,last.bat
  • 【新组件】用户认证Windows对话框[目前的PE都是控制台窗口输入] (有方法,没时间)
  • 【新组件】msi安装支持
  • 【新组件】.NET框架 (wim增加140MB,已实现 v2019.04.18
  • 【新组件】第3方输入法(小小输入法)
  • 【新组件】系统提示音 (已实现 v2019.04.18)
  • 【新组件】Windows Media Player (有清单,没时间,第3方不是更好)
  • 【新组件】Edage(谷歌内核)  (有清单,没时间,太大了不想集成)
  • 【精简】SysWOW64 目录 (预计减少50MB wim大小)
  • 【精简】自动处理dll资源,提取ico,字符串更新到注册表,删除纯资源dll。 (没时间)
  • 【新功能】第3方软件自动下载
  • 【新功能】集成第3方驱动接口
  • 【新功能】主题风格(暗黑模式)


遗留问题:
  • 20H1 Admin的主目录(X:\Users\Administrator)无法创建,导致很多问题,比如字体难看,不能重命名文件夹名。(已解决)

点评

繁体版PE(22000.2538 win11pe) 不能切换至Admin用户,好像是 logonui.exe 报错的原因,请看图  详情 回复 发表于 2023-11-5 16:13
[attachimg]460722[/attachimg][attachimg]460721[/attachimg] 如图我不想把这个打印机放桌面,想放到开始菜单里 下图的最后一行应该怎么改啊 S大 原始如下: call LinkToDesktop -paramlist "#{@printui.dll  详情 回复 发表于 2020-7-1 00:05
膜拜大神,看着这么多,望而生畏。大神应该和版主们协商一下,版主们一般本身都懂技术的,而且有人脉,跟他们建个QQ群,集中一些爱好者和技术大牛们,大家凭兴趣分点工,一个人做太辛苦,而且时间有限,像DISM++就是  详情 回复 发表于 2019-4-16 23:28

评分

参与人数 1无忧币 +5 收起 理由
palm777qqq + 5

查看全部评分

回复

使用道具 举报

推荐
发表于 2019-2-12 14:45:15 | 只看该作者
节后回来试了一把,感觉好了很多。期待新的版本
回复

使用道具 举报

推荐
发表于 2019-2-12 10:48:37 | 只看该作者
本帖最后由 lwb1 于 2019-2-12 10:59 编辑
slore 发表于 2019-2-11 22:22
看你干嘛了,驱动对应的是要的。bat就是批处理,主要AddFiles命令添加install.wim的文件列表,
工程里 ...


抱歉,我不是特别懂bat,麻烦给我解释一下这个是干什么的。
那个注释写的好像是更新什么

点评

rem ==========update filesystem========== 的意思是,更新系统文件(文件系统)。 比方说,让PE支持,文件打开对话框(运行->浏览,任务管理器->新建任务)需要添加 install.wim\windows\system32\ExplorerFram  详情 回复 发表于 2019-2-12 12:30
回复

使用道具 举报

推荐
发表于 2019-1-6 18:04:29 | 只看该作者
出个图文详细教程就好了

评分

参与人数 1无忧币 +5 收起 理由
sx3k + 5 支持

查看全部评分

回复

使用道具 举报

推荐
 楼主| 发表于 2019-1-24 22:58:20 | 只看该作者
本帖最后由 slore 于 2019-1-24 23:32 编辑

另外,外部程序PECMD,StartIsBack,7-ZIP将另外用一个库管理。
该库提供
fetch <程序> <版本> <构架>
的形式自动下载官方指定版本,最新版本,返回路径,WimBuilder2根据此路径直接将
文件应用到wim文件中,当有新版本更新时,删除旧版文件,重新构建即可。




另外,也做了一个简易的图形界面管理,有删除,和更新按钮。
采用WimBuilder2的框架,后面会直接整合到wimBuilder2中,作为一个"扩展插件"。



包含wget,aria2,7z工具的x64/x86版本,文件大于3MB了,分隔成2个附件。

(z01.zip文件去掉后缀.zip)
swRepo-master.z01.zip (2.9 MB, 下载次数: 435)
swRepo-master.zip (2.45 MB, 下载次数: 201)

https://github.com/slorelee/swRepo

使用方法, 先执行fetch.cmd不带任何参数,将解压7z,aria2等命令
然后,再用命令行,或者fetch.hta图形界面就可以了。

点评

如题 正常机下可以访问共享 PE下需要账号密码?  详情 回复 发表于 2020-6-29 13:17

评分

参与人数 1无忧币 +5 收起 理由
palm777qqq + 5

查看全部评分

回复

使用道具 举报

推荐
发表于 2019-1-21 11:17:15 | 只看该作者
本帖最后由 ku588 于 2019-1-21 12:09 编辑

这个工具的制作思路清晰,并且定制性很强,应该说是目前最易用的PE制作工具了,没有之一,随便一个小白就能做自己的PE,做出来PE兼容性也很好,就是体积庞大,还需要进一步精简和细节调整。

越简单易用的工具,对作者来说付出的汗水就越多,这样的技术原创贴应该加精的,顶起来!

评分

参与人数 3无忧币 +13 收起 理由
Mushroom + 5 这个男人很帅很酷
yyjpcx + 3 赞一个!
palm777qqq + 5

查看全部评分

回复

使用道具 举报

推荐
发表于 2019-1-19 23:42:25 | 只看该作者
楼主大哥,今天照着你的教程提取创建了一个win10pe,U盘启动进入桌面,MTP功能成功从手机里复制了一份1G左右的文件到了电脑,万分感谢
回复

使用道具 举报

推荐
 楼主| 发表于 2019-1-3 01:03:30 | 只看该作者
本帖最后由 slore 于 2019-1-3 21:28 编辑

StartIsBack界面更新选项,且带预览功能


推荐放置于 WimBuilder2\Projects\WIN10XPE\01-Components\00-Shell\za-StartMenu
za-StartMenu.zip (1.62 MB, 下载次数: 882)

点评

辛苦设置好pe,却发现没有电池电量图标,请问要添加哪些文件??  详情 回复 发表于 2020-3-22 11:48

评分

参与人数 1无忧币 +5 收起 理由
palm777qqq + 5

查看全部评分

回复

使用道具 举报

推荐
发表于 2018-11-13 09:47:45 | 只看该作者
感谢,期待教程

点评

点错了&#128547;  发表于 2018-11-13 11:50
回复

使用道具 举报

13#
发表于 2018-11-12 23:57:49 | 只看该作者
很好的创意和实践,希望早日成熟、完善。楼主辛苦了!谢谢!
回复

使用道具 举报

14#
发表于 2018-11-13 00:00:11 | 只看该作者
强烈支持楼主,,最好写个详细的教程造福大众
回复

使用道具 举报

15#
发表于 2018-11-13 00:02:36 | 只看该作者
不错,支持楼主
回复

使用道具 举报

16#
发表于 2018-11-13 00:03:08 | 只看该作者
体验体验
回复

使用道具 举报

17#
发表于 2018-11-13 00:05:15 | 只看该作者
WinXShell、wimbuilder2,大佬的作品总是那么惊艳
回复

使用道具 举报

18#
发表于 2018-11-13 09:06:26 | 只看该作者
mark 赞赞赞小白福利啊
回复

使用道具 举报

19#
发表于 2018-11-13 09:18:36 | 只看该作者
感谢分享,期待早日成熟、完善!
回复

使用道具 举报

20#
发表于 2018-11-13 09:46:31 | 只看该作者
强烈赞,期待一下
回复

使用道具 举报

21#
发表于 2018-11-13 09:54:35 | 只看该作者
支持,并感谢分享。
回复

使用道具 举报

22#
发表于 2018-11-13 10:50:44 | 只看该作者
这个很不错,要支持
回复

使用道具 举报

23#
发表于 2018-11-13 11:05:52 | 只看该作者
期待神功大成
回复

使用道具 举报

24#
发表于 2018-11-13 11:25:13 | 只看该作者
大佬NB
回复

使用道具 举报

25#
发表于 2018-11-13 11:58:08 | 只看该作者
看中楼主通过第3方(不采用系统原生组件)实现的功能——带网络的约260MB(350MB内)。
回复

使用道具 举报

26#
发表于 2018-11-13 12:38:49 | 只看该作者
强烈支持楼主,,希望楼主写个详细的教程造福大众
回复

使用道具 举报

27#
发表于 2018-11-13 17:29:52 来自手机 | 只看该作者
有没有成品?

点评

winre.wim 442MB, 补充很多系统文件560MB,太大了,没精简前不打算上传成品  发表于 2018-11-13 20:05
winre.wim 442MB, 补充很多系统文件560MB,太大了,没精简前不打算上传成品  发表于 2018-11-13 20:05
回复

使用道具 举报

28#
 楼主| 发表于 2018-11-13 22:36:15 | 只看该作者
本帖最后由 slore 于 2018-11-13 22:41 编辑

本来打算把声音,网络的补丁先制作,因为基本上是系统文件,所以补丁定义很小,介于有人要教程,
我把添加StartIsBack开始菜单为例子给说明下,WimBuilder2的补丁制作。(废话2楼,从21楼第3页开始。)

成果:

点评

S大 假如我之前生成的PE没有勾选远程桌面 后期想加 要怎么办  详情 回复 发表于 2020-6-27 14:12
回复

使用道具 举报

29#
 楼主| 发表于 2018-11-13 22:36:19 | 只看该作者
本帖最后由 slore 于 2018-11-13 22:44 编辑

StartIsBack是第3方工具,所以额外把“轻松访问”的系统组件:屏幕键盘,放大镜,讲述人的补丁作为
从install.wim提取的例子包含了。

  1. D:\Dev\WimBuilder2\Projects\WIN10XPE\01-Components>tree /f
  2. └─za-Accessories(Windows 组件)
  3.     │  main.html
  4.     │  zh-CN.js
  5.     │
  6.     └─Accessibility(辅助工具)
  7.             main.bat
  8.             main.html
  9.             zh-CN.js
复制代码
回复

使用道具 举报

30#
 楼主| 发表于 2018-11-13 22:36:32 | 只看该作者
本帖最后由 slore 于 2018-11-13 22:46 编辑

应大家要求以添加StartIsBack为例说明下如何使用WimBuilder2添加一个“补丁”。

===前言===
对PE进行完善无非就是添加/修改文件,补充/修改注册表。
WimBuilder2是一个让此操作更简洁的一个构建工具。

例子中的原生Explorer,输入法等组件的所需列表是从WIN10XPE工程中提取的。
当你知道某个程序所需的文件,和注册表项那么你就可以制作补丁了。
WimBuilder2比WimBuilder增强的是,提供了一个采用html设定补丁选项的UI界面方式,
使得PE做成更灵活。

===正文===
补丁制作正式开始前,首先清楚补丁制作的过程分大体3部分:
1. 补丁选择界面,选项界面
2. 文件,注册表修改
   a. 添加原生系统文件,系统原生注册表(install.wim)
   b. 添加第3方文件,更新自定义注册表项目
3. 配置文件修改(startnet.cmd, pecmd.ini等)
   需要PE启动后执行的初始动作,例如:注册dll,创建快捷方式等
回复

使用道具 举报

31#
 楼主| 发表于 2018-11-13 22:36:59 | 只看该作者
本帖最后由 slore 于 2018-11-13 22:52 编辑

===第一章 第一节 补丁选择界面===
StartIsBack是开始菜单,需要外壳依赖,那么我们可以:

  1. +组件
  2.   +外壳
  3.     +开始菜单(如果只使用1个开始菜单工具这层可以不要)
  4.       +StartIsBack
  5.       +ClassicShell
复制代码


WimBuilder2的话,只要目录存在main.html就会显示到补丁选择树上,
相同目录存在zh-CN.js,且其中有patch_name的话,可以自定义补丁的显示名称。
构建时,将调用目录中的main.bat补丁脚本。


  1. Projects
  2.   WIN10XPE
  3.     +01-Components(组件)
  4.       +00-Shell(外壳)
  5.         +StartMenu(开始菜单)
  6.             +main.html
  7.             +zh-CN.js(patch_name="开始菜单")
  8.                +StartIsBack
  9.                   +main.html
复制代码


不需要制作英文版,或者在其他语言系统上制作PE的话,可以直接创建中文目录。

好了,F5刷新下,现在你可以看到StartIsBack的菜单了。
回复

使用道具 举报

32#
 楼主| 发表于 2018-11-13 22:37:29 | 只看该作者
本帖最后由 slore 于 2018-11-13 23:29 编辑

===第一章 第二节 补丁选项界面===
main.html就是补丁的说明,选项设定界面了。
这个就发挥大家的UI设计水平了,下面我们给StartIsBack设计一个皮肤的选择的选项。
-----------------------------------
◎Windows7 ◉Plain8 ◎Plain10
-----------------------------------


根据 http://www.w3school.com.cn/jsref/dom_obj_radio.asp 我们如下添加3个单选按钮。

Projects\StartIsBack\WIN10XPE\01-Components\00-Shell\StartMenu\StartIsBack\main.html

  1. <p>皮肤</p>
  2. <input type="radio" value="Windows7" /> Windows7
  3. <input type="radio" value="Plain8" checked/> Plain8
  4. <input type="radio" value="Plain10" /> Plain10
复制代码


双击main.html你的浏览器中应该就可以显示它们了,点击试试吧。


你可以发现,3个按钮都能点击,不是互斥的。根据radio标签的语法,
拥有相同的name属性的选项按钮会互斥,所以:
<p>皮肤</p>
<input type="radio" name="skin_group" value="Windows7" /> Windows7
<input type="radio" name="skin_group" value="Plain8" checked/> Plain8
<input type="radio" name="skin_group" value="Plain10" /> Plain10
再试试,是不是可以互斥了。

我们再用组合表单(fieldset标签)包起来:

  1. <fieldset>
  2. <legend>皮肤</legend>
  3. <input type="radio" name="skin_group" value="Windows7" /> Windows7
  4. <input type="radio" name="skin_group" value="Plain8" checked/> Plain8
  5. <input type="radio" name="skin_group" value="Plain10" /> Plain10
  6. </fieldset>
复制代码


是不是更好看了些。


下面是重点-如何将选项与补丁脚本(main.bat)关联起来。
WimBuilder2会自动将class属性是opt_item的标签,将其值设置为环境变量opt[标签名]=xxx

所以,最终为:
<fieldset>
<legend>皮肤</legend>
<input type="radio" class="opt_item" name="SIB.skin" value="Windows 7" /> Windows 7
<input type="radio" class="opt_item" name="SIB.skin" value="Plain8" checked/> Plain8
<input type="radio" class="opt_item" name="SIB.skin" value="Plain10" /> Plain10
</fieldset>

main.bat中我们可以使用%opt[SIB.skin]%来使用此选项。

另外,“皮肤”可以在main.html写成Skin,然后通过zh-CN.js定义"Skin":"皮肤"在不同系统下显示对应语言的内容。

PE中常见的是 单选按钮,复选按钮,下拉选择等设定我已经在其他界面实现了,请参照已经有的界面。

可通过Projects\WIN10XPE\config.js来设定,参数的默认值,和默认是否勾选此补丁。

(可以下载后面补丁的最终版本的附件,来查看。)

PS:为了更好的展示效果,其实还可以做3种不同皮肤的预览图,切换不同选项的时候,显示皮肤效果,
main.html中onclick事件通过jquery改下加载图片即可。这个属于html美化范畴,我这里不多说了。
回复

使用道具 举报

33#
 楼主| 发表于 2018-11-13 22:38:04 | 只看该作者
本帖最后由 slore 于 2018-11-13 23:25 编辑

===第二章 第一节A 添加第3方文件===
通过WIN10XPE项目,我们可以看到StartIsBack需要的文件如下:
  1. Win10XPE_2018-10-12\Win10XPE\Projects\Include\x64\AdditionalFiles
  2.   \Program Files\StartIsBack
  3. │  StartIsBack32.dll
  4. │  StartIsBack64.dll
  5. │  StartIsBackCfg.exe
  6. │  startscreen.exe
  7. ├─Orbs
  8. └─Styles
  9.         Plain10.msstyles
  10.         Plain8.msstyles
  11.         Windows 7.msstyles

  12. Win10XPE_2018-10-12\Win10XPE\Projects\Include\x86\AdditionalFiles
  13.   \Program Files\StartIsBack
  14. │  StartIsBack32.dll
  15. │  StartIsBackCfg.exe
  16. │  startscreen.exe
  17. ├─Orbs
  18. └─Styles
  19.         Plain10.msstyles
  20.         Plain8.msstyles
  21.         Windows 7.msstyles
复制代码


WIN10XPE工程來自ChrisR http://theoven.org/index.php?topic=2421.0
可以从这里 http://win10se.cwcodes.net/Compressed/index.php 下载

把上面文件放到
Projects\StartIsBack\WIN10XPE\01-Components\00-Shell\StartMenu\StartIsBack\X_x64
Projects\StartIsBack\WIN10XPE\01-Components\00-Shell\StartMenu\StartIsBack\X_x86
然后,根据PE的构架是32位还是64位,复制对应的文件即可。

WimBuilder2自动将winre.wim/boot.wim挂载到mounted目录,且映射到X:驱动器
所以  xcopy /E /Y X_x64\*.* X:\  就行了。
通过BeyondCompare比较,发现x64和x86公用StartIsBack64.dll以外的所有文件
(没有WOW64支持的话,x64下无法运行StartIsBackCfg.exe设置),
将X_x64版本的所有文件放到X目录,那么我们可以如下书写main.bat:

  1. rem 复制所有文件,如果是x86平台,删除StartIsBack64.dll
  2. xcopy /E /Y X\*.* X:\
  3. if not "%WB_PE_ARCH%"=="x64" del /f "X:\Program Files\StartIsBack\StartIsBack64.dll"
复制代码


是不是很简单?
回复

使用道具 举报

34#
 楼主| 发表于 2018-11-13 22:38:25 | 只看该作者
本帖最后由 slore 于 2018-11-13 23:08 编辑

===第二章 第一节B 添加第3方注册表项目===
WimBuilder2启动后,将自动将wim的注册表挂载到:
  1. HKLM\Tmp_Default
  2. HKLM\Tmp_Software
  3. HKLM\Tmp_SYSTEM
  4. HKLM\Tmp_SAM
  5. HKLM\Tmp_SECURITY
复制代码


所以,如果想修改PE的注册表,直接通过reg命令即可。
例如使用暗黑主题的命令为:
reg add HKLM\Tmp_Default\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize /v AppsUseLightTheme /t REG_DWORD /d 0 /f

如果需要导入的注册表内容特别多,比如StartIsBack的,可以使用reg文件,
注意使用Tmp_Software之类的路径。
WIN10XPE工程中的
  • SIB_RegDefault.txt
  • SIBx64_RegSoftware.txt
  • SIBx86_RegSoftware.txt

直接就是:
  1. Windows Registry Editor Version 5.00

  2. [HKEY_LOCAL_MACHINE\Tmp_Default\Software\StartIsBack]
  3. "CurrentVersion"="2.6.2"
  4. "WelcomeShown"=dword:00000002
  5. "UpdateDate"="23/08/2017"
  6. "CustomColors"="ColorA=FFFFFFFF"
  7. "AutoUpdates"=dword:00000000
  8. ...
复制代码


这种格式,所以直接拿来用reg import或者regedit /s命令导入即可。
另外,WIN10XPE的Core.Script中还有部分设定,我们通过reg add来修改,
当然,别忘了我们的“皮肤”设定。

所以最终main.bat为:

  1. rem 复制所有文件(含开始菜单头像user-200.png),如果是x86平台,删除StartIsBack64.dll
  2. xcopy /E /Y X\*.* X:\
  3. if not "%WB_PE_ARCH%"=="x64" del /f "X:\Program Files\StartIsBack\StartIsBack64.dll"

  4. rem 导入注册表
  5. reg import "%~dp0SIB_RegDefault.reg"
  6. reg import "%~dp0SIB%WB_PE_ARCH%_RegSoftware.reg"

  7. reg add HKLM\Tmp_Default\Software\StartIsBack /v AlterStyle /d "X:\Program Files\StartIsBack\Styles\%opt[SIB.skin]%.msstyles" /f
  8. reg add HKLM\Tmp_Default\Software\StartIsBack /v TaskbarStyle /d "X:\Program Files\StartIsBack\Styles\%opt[SIB.skin]%.msstyles" /f

  9. rem // StartIsBack Display as flyout menu (Windows XP style) value 0/1
  10. reg add HKLM\Tmp_Default\Software\StartIsBack /v AllProgramsFlyout /t REG_DWORD /d 0 /f
复制代码


其实SIBx64_RegSoftware.txt vs SIBx86_RegSoftware.txt,只有6处
StartIsBack64.dll和StartIsBack32.dll文件名不同的,可以导入其中一份,
然后用reg add命令单独修改。不过就165行,压缩后2KB,没必要整合,
当然如果对StartIsBack进行不同的设定,不想32位,64位的2边都修改,可以整合。
回复

使用道具 举报

35#
 楼主| 发表于 2018-11-13 22:38:47 | 只看该作者
===第二章 第二节A 添加原生系统文件===
StartIsBack本身并没有依赖,这里简单说下(请参照explorer, ime的main.bat)。

WimBuilder2提供了一个AddFiles宏命令(lib\macros\AddFiles.cmd, AddFiles.vbs),
可以根据一个main.bat中的文件列表进行从install.wim提取文件。
格式:
call AddFiles %0 :end_files
goto :end_files

;install.wim中的文件/文件夹路径列表,例如
\windows\explorer.exe
\Windows\System32\notepad.exe
\windows\IME
:end_files

同时,WimBuilder2的AddFiles针对提取install.wim文件做了些特别处理,使得文件列表变得简洁。
a. @前导符 + 路径: 后续文件可省略文件路径
b. +mui: 提取文件的同时,提取\zh-CN\*.mui之类的对应的mui文件
c. +ver > xxxxx: 后续文件仅在指定的版本条件下才提取
d. 以上内容可组合
e. @-: 取消文件路径
f. -mui: 取消mui文件提取
g. +ver* : 所有版本都提取后续文件(移除版本判断)
h. 文件以\开头,将无视@指定的路径(避免因为个别文件而反复设置@路径)
i.多个文件名以","分割可以写到一行,文件关系更紧凑


以磁盘管理组件为例,参照WIN10XPE的Explorer_AddFiles.txt,内容如下:

  1. ; Microsoft Managment Control. Disk Management
  2. \windows\system32\diskmgmt.msc
  3. \Windows\System32\dmdlgs.dll
  4. \Windows\System32\dmdskmgr.dll
  5. \Windows\System32\dmdskres.dll
  6. \Windows\System32\dmdskres2.dll
  7. \Windows\System32\dmintf.dll
  8. \Windows\System32\dmocx.dll
  9. \Windows\System32\dmutil.dll
  10. \Windows\System32\dmvdsitf.dll
  11. \Windows\System32\dmview.ocx
  12. \Windows\System32\hhsetup.dll
  13. \Windows\System32\??-??\diskmgmt.msc
  14. \Windows\System32\??-??\dmdskres.dll.mui
  15. \Windows\System32\??-??\dmdskres2.dll.mui
  16. \Windows\System32\??-??\dmocx.dll.mui
  17. \Windows\System32\??-??\dmutil.dll.mui
复制代码


所以,MMC\diskMgr.bat

  1. call AddFiles %0 :end_files
  2. goto :end_files
  3. @\windows\system32\
  4. +mui
  5. ;Disk Management
  6. diskmgmt.msc
  7. dmdlgs.dll,dmdskmgr.dll,dmdskres.dll,dmdskres2.dll,dmintf.dll
  8. dmocx.dll,dmutil.dll,dmvdsitf.dll,dmview.ocx,hhsetup.dll
  9. :end_files
复制代码


为了更容易理解,我从WIN10XPE的
Accessibility.Script
Accessibility_AddFiles.txt
移植了,辅助工具(轻松访问,放大镜,屏幕键盘,讲述人)。
这个组件,只要补充install.wim的文件即可。

见最终附件的
WINXPE\01-Components\zz-Accessories\Accessibility\main.bat
回复

使用道具 举报

36#
 楼主| 发表于 2018-11-13 22:39:05 | 只看该作者
本帖最后由 slore 于 2018-11-13 23:09 编辑

===第二章 第二节B 添加原生注册表项目===
WimBuilder2启动后,将自动将install.wim的注册表挂载到:
  1. HKLM\Src_Default
  2. HKLM\Src_Software
  3. HKLM\Src_SYSTEM
复制代码

...

可以通过reg命令查询/修改其内容,不过对于PE通常只是复制其内容。
reg copy /?
为了方便,WimBuilder2提供了一个RegCopy宏(lib\macros\RegCopy.cmd),可在main.bat中如下使用:
  1. call RegCopy HKLM\Software\Classes\CLSID
  2. call RegCopy HKLM\Software\Classes\Interface
  3. call RegCopy HKLM\Software\Classes\TypeLib
复制代码


是不是很方便。
回复

使用道具 举报

37#
 楼主| 发表于 2018-11-13 22:39:40 | 只看该作者
本帖最后由 slore 于 2018-11-13 23:09 编辑

===第三章 配置文件修改===
StartIsBack本身不需要,辅助工具除了创建快捷方式外也不需要,
本章先空下。回头补充pecmd.exe了再写。

就是修改startnet.cmd,或者pecmd.ini文件,批处理怎么处理文本,
就可以怎么用,不过不方便而已。WimBuilder2带了一个OpenTextFile(打开文件)的宏,
大体上可以这样用:
  1. call 打开文件 X:\Windows\System32\startnet.cmd %0 :end_startnet_edit
  2. goto :end_startnet_edit
  3. 文本.将("wpeinit").替换为("echo startup...\r\nwpeinit");
  4. 文本.在("explorer.exe").前插入("echo start shell...");
  5. 文本.替换("rem call ime_cmd.cmd", "call ime_cmd.cmd");
  6. :end_startnet_edit
复制代码


lib\macros\下面自己可以添加喜欢的脚本供批处理调用,或者bin下面添加命令,可以直接使用。
回复

使用道具 举报

38#
 楼主| 发表于 2018-11-13 23:21:11 | 只看该作者
本帖最后由 slore 于 2018-11-13 23:27 编辑

说明比较多,但实际main.bat不过10来行,请直接看最终补丁吧。在附件的如下位置:
StartIsBack(2MB)-> D:\Dev\WimBuilder2\Projects\WIN10XPE\01-Components\00-Shell\za-StartMenu\StartIsBack
辅助工具(1.5KB)->    D:\Dev\WimBuilder2\Projects\WIN10XPE\01-Components\za-Accessories\Accessibility

因为补丁还算小,免得大家再复制整合到工程中,所以提供包含了完整工程 原WIN10XPE+StartIsBack+辅助工具 附件(1.9MB)。

WIN10XPE.zip (1.93 MB, 下载次数: 457)

本来打算把2MB的WimBuilder2也一起带上,不过附件最大3MB,所以只传工程了。





回复

使用道具 举报

39#
 楼主| 发表于 2018-11-13 23:31:05 | 只看该作者
把这页占满吧。

点评

支持值得点赞 批处理加句自动退出  详情 回复 发表于 2018-11-14 06:15
回复

使用道具 举报

40#
发表于 2018-11-14 06:15:13 | 只看该作者
本帖最后由 金辰影视 于 2018-11-14 06:35 编辑
slore 发表于 2018-11-13 23:31
把这页占满吧。


支持值得点赞  在构建批处理加句自动退出感觉好一点

点评

因为没有对构建做日志导出,所以停留看结果有没有错误。有错误的话,echo on来分析。 全部是脚本构成,asserts\page_build.js,自己把cmd /k改成/c就不停留了。  详情 回复 发表于 2018-11-14 08:17
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-3-29 17:13

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表