无忧启动论坛

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

[原创] Wimbuilder2-基于hta/vbs/js/bat的图形界面新的PE生成器

    [复制链接]
跳转到指定楼层
1#
发表于 2018-6-24 15:08:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 slore 于 2020-5-8 23:25 编辑

Wimbuilder2

特点:
  • 纯脚本打造,小,简单,快速且可自由修改所有功能, 所作更改, F5刷新即生效, 不用编译, 不用打包, 不用安装
  • 利用wimlib直接从install.Wim提取所需文件,省去挂载卸载install.wim时间,生成速度非常快
  • 使用TrustInstaller权限启动, 不需要对文件,注册表进行权限修改,生产速度更快
  • 设定界面采用HTML, 随改F5刷新即可见, 支持目前绝大部分HTML5语法, 更做出更炫,更自由的设定界面(还可以使用js脚本, 动态改变)
  • 对系统功能所需文件,注册表从结构上独立成单个功能补丁, 便于学习, 和给更多版本参考共用
  • 为增删改Wim内容提供便利宏命令(批处理),制作补丁不用写复杂脚本, 使用简单的文件列表, 注册表信息即可,功能补丁制作学习曲线低
  • 脚本自身(js),界面(html),补丁(bat)均采用广为人知的脚本语法,普通用户可利用常用宏,懂bat等即可创建自定义宏
  • 自定义设定界面, 自定义组件功能补丁完全独立,可以给不同工程共用
  • 界面,脚本,功能补丁支持国际化


运行环境:Windows 7~Windows Server 2019未精简系统。
              原生boot.wim(2)/wimre.wim环境(默认带HTA组件(mshta.exe, mshtml.dll)的版本【Win10的已测试】)。

程序截图:






最新更新反映在 【PE作品发布区】
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=411399

github最新版(含WIN10XPE工程)永久地址: https://github.com/slorelee/wimbuilder2/archive/master.zip

新版附件中带一个WIN10XPE的例子(winre.wim为基础), 将winbuilder的工程转换为简洁的批处理脚本工程(273KB).
完全从系统install.wim提取所需文件,不包含任何非系统文件,构建了一个包含以下组件的Windows PE(支持10.0.17763):

  • 原生Windows Explorer外壳(RS5以上支持暗黑主题)
  • DWM服务支持
  • 设备管理器
  • 磁盘管理器
  • 服务管理器
  • 原生简体中文,繁体中文,韩语输入法
  • 原生搜索功能 (2018-11-18)
  • 基本显示器驱动,显卡驱动 (2018-11-18)
  • 网络支持 (2018-11-18)
  • WOW64支持(x64环境下可运行x86程序) (2018-12-05)
  • IE 11(x64 & x86) (2018-12-05)




使用方法:
1.运行wimbuilder.cmd启动
2.准备界面:选择install.wim,选择winre.wim(索引1)[从install.wim\Windows\System32\Recovery\提取],
3.工程界面:选择WIN10XPE工程
4.补丁界面:选择需要集成的功能补丁,以及补丁设置
5.构建界面:点击1-run即可生成wim文件(1-exec通常不使用,为出错时运行选项,保存构建记录到界面),
                 再点3-makeiso将生成ISO(请自己准备ISO模板放到_ISO_目录中)


默认工程不含第三方工具,有人问添加工具的方法,这里提供PECMD启动器,PENetwork工具 的2个例子补丁,请参照。
基本上就是把文件解压出来就可以了。

101楼(11页) PECMD作为启动器,隐藏掉CMD命令提示符窗口的补丁
http://bbs.wuyou.net/forum.php?m ... 4934&fromuid=166812
102楼(11页) 为PE添加PENetwork工具
http://bbs.wuyou.net/forum.php?m ... 4941&fromuid=166812

发现论坛上实际对于WimBuilder2本身的 反馈,建议不多,更多的是生产出来的PE的问题,建议。

最新更新反映在 【PE作品发布区】
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=411399

2018-12-04 更新:
因为对纯x64的PE环境支持,增加了些x64的程序,导致整体大于3MB,所以分成x86,x64版本提供下载。
都可以构建x86,x64的PE。(x64版没有bin\x86和bin\SetACL.exe,x86版没有bin\x64,仅此区别,其他是脚本所以都一样。)

WimBuilder2_1204_x64.zip (2.75 MB, 下载次数: 2015)
WimBuilder2_1204_x86.zip (2.56 MB, 下载次数: 750)

1.增加一个200kb测试补丁用boot.wim(第一卷x64,第二卷x86),空的Windows目录,注册表结构,用于测试补丁变化,且快速加载。
2.增加构建后可自动启动虚拟机测试ISO接口(带VirtualBox启动例子)。
3.第一次访问构建页面后,其他页面增加一键快速构建按钮。
4.WIN10XPE工程,增加 WOW64支持(x64环境下可运行x86程序)IE 11(x64 & x86)
5.其他细节更新,已知小问题修正



wb_shot2.png (110.54 KB, 下载次数: 341)

wb_shot2.png

VirtualBox_win2016en_20_11_2018_00_46_38.png (53.08 KB, 下载次数: 372)

VirtualBox_win2016en_20_11_2018_00_46_38.png

WimBuilder2_with_WIN10XPE.zip

2.29 MB, 下载次数: 1096, 下载积分: 无忧币 -2

点评

利用wimlib直接从install.Wim提取所需文件.这个强大。  发表于 2018-6-24 22:23

评分

参与人数 39无忧币 +183 收起 理由
zhh_xq + 5 很给力!
Zzfabgroup + 5
2012fhx + 1 赞一个!
zihaoo + 5 很给力!
梦铃若曦 + 5 很给力!
lough_007 + 5
hlccfu + 5 很给力!
MapleSugar + 15 很给力!
k25566 + 1 大佬V5!
sunshineboy + 1 赞一个!
pewors + 5 赞一个!
826773297 + 5 支持一下
qli365 + 5 赞一个!
幻天雨 + 5 很给力!
2010yaobin + 5 很给力!
hack1vip + 1 很给力!
danmo + 5 赞一个!
ZHAGBG + 5 很给力!
Hysanohsp + 5
某些人 + 1 很给力!
sx3k + 5 赞一个!
chshrm + 5 牛叉!
2011shenql + 5 赞一个!
dwtr + 3 很给力!
cuicongyuan + 5 好啊
泰立信 + 5 赞一个!
2011mtw35 + 5 很给力!
wuhuyou + 5 很给力!
2012baiduzhidao + 5 很给力!
foolst + 5 很给力!

查看全部评分

推荐
 楼主| 发表于 2018-6-24 15:08:33 | 只看该作者
本帖最后由 slore 于 2018-6-24 22:40 编辑



title wimbuilder 是如何工作的呢?

用户->wimbuilderUI: 选择源install.wim文件
用户->wimbuilderUI: 选择基础wim文件(例如:boot.wim)
用户->wimbuilderUI: 选择一个工程
note right of wimbuilderUI:显示工程相关信息与可变更参数选项界面
用户->wimbuilderUI: 选择要为基础wim文件进行的[补丁]
用户->wimbuilderUI: 点击 'build' (构建)按钮
wimbuilderUI->wimbuilder(批处理): 构建工程(bin\\_process.bat)
wimbuilder(批处理)->wimbuilder(批处理): 提取源install.wim的注册表HIVE文件
note right of wimbuilder(批处理): 放在\n_Factory_\\target\\<project>\\install\\windows\\system32\\config\\*.*
wimbuilder(批处理)->wimbuilder(批处理): 复制boot.wim到*_Factory_*(工厂)进行加工
note right of wimbuilder(批处理): 复制boot.wim到\n_Factory_\\target\\<project>\\boot.wim\n(不对基础wim进行修改)
wimbuilder(批处理)->wimbuilder(批处理):挂载install.wim的注册表HIVE文件
note right of wimbuilder(批处理): 挂载路径为:\nHKLM\\Src_SYSTEM,\nHKLM\\Src_Software,\n...\n(用于REGCOPY)
wimbuilder(批处理)->wimbuilder(批处理):通过Dism命令挂载boot.wim
note right of wimbuilder(批处理): 挂载路径为:\n_Factory_\\target\\<project>\\Mounted
wimbuilder(批处理)->wimbuilder(批处理):映射挂载路径为X:驱动器
note right of wimbuilder(批处理): SUBST "%_WB_MNT_DIR%" X:\\\n(用于对X:\\xxx操作)
wimbuilder(批处理)->wimbuilder(批处理): 挂载boot.wim的注册表HIVE文件
note right of wimbuilder(批处理): 挂载路径为:\nHKLM\\Tmp_SYSTEM,\nHKLM\\Tmp_Software,\n...
wimbuilder(批处理)->wimbuilder(批处理): 处理用户补丁main.bat
note right of wimbuilder(批处理): 通过宏 增/删/改文件,更新注册表\nOpenTextFile,\nREGCOPY,\nACLRegKey,\n...
wimbuilder(批处理)->wimbuilder(批处理): 提交修改并导出新wim
note right of wimbuilder(批处理): bin\\_cleanup.bat卸载注册表,commit变更\n导出到:\n_Factory_\\target\\<project>\\build\\boot.wim
用户->wimbuilderUI: 点击 'iso' (镜像制作)按钮
wimbuilderUI->wimbuilder(批处理):bin\\_MakeBootISO.bat
note right of wimbuilder(批处理): 复制build\\boot.wim -> _ISO_\\sources\\boot.wim\n利用oscdimg.exe制作镜像到\n_Factory_\\BOOTPE.iso
回复

使用道具 举报

推荐
 楼主| 发表于 2018-7-10 00:34:08 | 只看该作者
本帖最后由 slore 于 2018-11-3 23:02 编辑
xuexiang 发表于 2018-7-3 17:42
大神这么厉害,能不能做个类似win10开始菜单界面的程序,一个页面可以自定义放置自己的软件,pe下使用


用WinXShell.exe写了一个界面:


做一个快捷方式,固定到任务栏就行了。

自定义界面:
UI_Launcher.zip/main.xml

自定义应用程序启动:
UI_Launcher.zip/main.lua
  1. function onclick(ctrl)
  2.   if ctrl == "calc" then
  3.     suilib.call("run", "calc.exe")
  4.   elseif ctrl == "notepad" then
  5.     suilib.call("run", "notepad.exe")
  6.   end
  7. end
复制代码


旧版的WinXShell.exe也可以出界面,不过只支持窗口在中间或者右下角显示,
附件是开发中的版本,加了一个左下角显示窗口的选项,你可以运行下看看效果。

WinXShell_x64_0709.zip (1.09 MB, 下载次数: 169)

此功能已经集成在最新的WinXShell.exe,且有全屏模式,与Wimbuilder2无关.

点评

可以设置全屏显示吗? 菜单图标可不可以提取自程序 可不可以点击后菜单后不消失, 就跟打开一个程序一样不关闭一直在 测试了一下挺好的,17711测试正常  详情 回复 发表于 2018-7-10 18:47
回复

使用道具 举报

推荐
发表于 2018-6-25 15:34:24 | 只看该作者
本帖最后由 xuexiang 于 2018-6-29 13:55 编辑
slore 发表于 2018-6-25 13:05
看过程对boot.wim的加载已经完成,但是准备打补丁时,没有找到:
Projects\WIN10XPE\main.bat


不支持预览版,17134直接成功
17134boot卷1不行,好奇setup比pe就多了setup支持安装的两个组件
新版
17704测试正常,
可以正常运行联想一键恢复okr9,理论上okr8也支持
pe re setup组件一样,组件也很多

组件.zip

4.25 KB, 下载次数: 108, 下载积分: 无忧币 -2

清单

点评

wimbuilder是一个构建框架,具体什么功能要看大家对“补丁”的分享了。某些生产工具是不可见的,出错了只能等作者,而这个是批处理等脚本实现,可以自己定位问题,自己改善。  发表于 2018-6-25 15:58
预览版是explorer不能启动?这个是依赖文件或者注册表变化,要改main.bat。依赖组件服务对了,注册表信息对了就好了。如果有人winbuilder的预览版例子,可以对比,快速改造出来。  发表于 2018-6-25 15:56
回复

使用道具 举报

5#
 楼主| 发表于 2018-6-24 15:08:35 | 只看该作者
本帖最后由 slore 于 2018-11-18 00:06 编辑

如何构建例子工程WIN10XPE?

1.点左侧【准备】,选择 install.wim,选择 boot.wim,下一步 (config.js文件中可配置默认路径,所以通常不再需要准备界面)
2.【Project工程】选WIN10XPE工程,下一步
3.【Patch补丁】选择需要应用的补丁,以及进行补丁的选项
4.【build构建】点1-run_build进行构建,
   再点2-make_iso创建ISO文件
  (0-cleanup按钮,用于卸载注册表和WIM文件的挂载,通常顺利挂载wim的情况下,不需要,如果磁盘空间,或者被占用导致构建失败时,才需要按此按钮)

回复

使用道具 举报

6#
 楼主| 发表于 2018-6-24 15:08:39 | 只看该作者
本帖最后由 slore 于 2018-12-5 00:05 编辑

更新历史

2018-11-22 更新:
* 易用性改善,将自动记忆当前的选项,下次启动不需要再指定
* 自动检测可用磁盘驱动器用于挂载
* 可以选择构建完成后立即创建ISO镜像
* 1-exec模式将保留构建日志


2018-11-20 更新:
与前一版本没太大区别。只是支持选择映射磁盘驱动,另外winre.wim/boot.wim下直接进行构建进行了适配。
(ADO组件依赖移除,findstr等命令缺失,代替处理等等),不在PE下运行WimBuilder2构建PE的话,可暂时不用下载。

2018-11-18 更新:
1.WIN10XPE工程,增加 原生搜索功能基本显示器驱动,显卡驱动网络支持
2.增加一个精简补丁实例
3.WimBuilder2对驱动补丁支持,精简接口,进行适配,增强AddFiles宏,RegCopy宏, 增加RegEx宏。
4.根据使用建议,对准备及工程界面,进行易用性增强
5.可在HTA内核为IE8环境构建(Windows 7)

  • 支持选择镜像盘,且根据系统镜像创建ISO模板
  • 支持选择sources目录,直接关联install.wim和boot.wim/winre.wim
  • 支持从install.wim自动提取winre.wim
  • 界面进行必要的提示,与检查
  • 当仅有一个工程时,默认选择该工程


winre.wim(win10)原生支持HTA,vbs,js,所以在winre.wim下也可以运行wimbuilder2,
但是没有ado组件,所以无法读取UTF8格式的国际化资源,界面是英文。(资源文件改成ANSI,UTF16-LE可以解决)
X映射修改完再更新。(2018-11-20版已更新)

因为做界面增强,IE11补丁未完成
已经把“系统自带搜索功能”,“网络支持”实现了,不过x64版本原生IE浏览器,需要WOW64支持,而且下载文件需要切换Administrator用户,
周末把WoW64和SwitchAdmin补丁整理下再更新(针对驱动更新,还有精简改了些代码)。


2018-11-3 更新:
  • 功能补丁结构更加完善
  • 自动根据目录生成功能补丁选择树
  • 可初始化界面的参数默认值(现在支持界面元素:文本,下拉框选择,复选按钮,单选按钮,图片)
  • 可将或者界面中动态修改的参数值(之后会通过环境变量传递, 给批处理使用)
  • 功能补丁的多国语言显示支持


2018-06-26 更新:
  • 修复:最新预览版(10.0.17692.1000)构建时,无法正常卸载的问题
  • 改进:当默认boot.wim不存在时,先显示【准备】界面
  • 改进:暂时禁用【准备】页面变更【工作空间】按钮(WORKSPACE,Projects存放目录,暂时使用当前目录)
  • 改进:当不存在_ISO_模板时,提供一个最小ISO模板(保证生产ISO按钮成功)


详细原因分析,如何修改批处理解决问题,参照#30楼说明。
也可以在github上查看修改履历
https://github.com/slorelee/wimb ... 1543fa05efaceb62dc4
回复

使用道具 举报

7#
 楼主| 发表于 2018-6-24 15:08:43 | 只看该作者
本帖最后由 slore 于 2018-11-22 02:13 编辑

占楼




WimBuilder2_1122.zip (2.89 MB, 下载次数: 101)
回复

使用道具 举报

8#
发表于 2018-6-24 16:16:41 | 只看该作者
占楼
回复

使用道具 举报

9#
发表于 2018-6-24 18:22:57 | 只看该作者
占楼是不是太多了?!
回复

使用道具 举报

10#
发表于 2018-6-24 18:36:56 | 只看该作者
看看更新了什么
回复

使用道具 举报

11#
发表于 2018-6-24 19:31:02 来自手机 | 只看该作者
感谢分享,
回复

使用道具 举报

12#
发表于 2018-6-24 20:47:53 来自手机 | 只看该作者
沙发没占上
回复

使用道具 举报

13#
发表于 2018-6-24 20:55:37 | 只看该作者
能添加文件列表=增加文件
注册表是pe的还是ins 的

点评

自动挂载 instal.wim的注册表文件到HKLM\Src_SYSTEM,HKLM\Src_SOFTWARE; 自动挂载 PE的注册表文件到HKLM\Tmp_SYSTEM,HKLM\Tmp_SOFTWARE; 通常利用REGCOPY复制install的注册表内容,你也可以自己用reg命令操作  详情 回复 发表于 2018-6-24 22:14
回复

使用道具 举报

14#
 楼主| 发表于 2018-6-24 22:14:46 | 只看该作者
本帖最后由 slore 于 2018-6-24 22:16 编辑
黑中见白 发表于 2018-6-24 20:55
能添加文件列表=增加文件
注册表是pe的还是ins 的


例子是,用boot.wim自己的注册表,然后从ins中复制必要的CLSID,INTERFACE等项目。
当然可以直接复制SOFTWARE,进行修改更简单。

==================================================
自动挂载
instal.wim的注册表文件到HKLM\Src_SYSTEM,HKLM\Src_SOFTWARE;
自动挂载
PE的注册表文件到HKLM\Tmp_SYSTEM,HKLM\Tmp_SOFTWARE;

利用REGCOPY复制install的注册表的所需内容,你也可以自己用reg命令操作。

详细流程及对应文件,请参考2楼:
wimbuilder是如何为你工作的?

点评

主要是我自己用其他软件弄的pe 服务不全,没有蓝牙  详情 回复 发表于 2018-6-24 22:17
回复

使用道具 举报

15#
发表于 2018-6-24 22:17:11 | 只看该作者
slore 发表于 2018-6-24 22:14
例子是,用boot.wim自己的注册表,然后从ins中复制必要的CLSID,INTERFACE等项目。
当然可以直接复制S ...

主要是我自己用其他软件弄的pe 服务不全,没有蓝牙

点评

这个是PE生成工具,具体补充什么内容(文件/注册表/服务/驱动)需要别人分享的经验,这个工具只是更容易方便管理和利用这些“补丁”  发表于 2018-6-24 22:43
回复

使用道具 举报

16#
发表于 2018-6-24 22:22:44 | 只看该作者
厉害!
回复

使用道具 举报

17#
发表于 2018-6-25 00:47:16 | 只看该作者
看看更新了什么
回复

使用道具 举报

18#
发表于 2018-6-25 07:42:37 | 只看该作者
很强大的样子啊,记号下
回复

使用道具 举报

19#
发表于 2018-6-25 08:21:19 | 只看该作者
感谢分享
回复

使用道具 举报

20#
发表于 2018-6-25 08:59:22 | 只看该作者
这样算是改进的版本,减少手工步骤
回复

使用道具 举报

21#
发表于 2018-6-25 10:59:28 | 只看该作者
好东东,收下啦~楼主忒牛,谢la...
回复

使用道具 举报

22#
发表于 2018-6-25 12:32:36 | 只看该作者
感谢大神分享
回复

使用道具 举报

23#
发表于 2018-6-25 12:33:17 | 只看该作者
弱弱的问一下,有几人会用?

点评

点8下鼠标 1.点【准备】,选择 install.wim,选择 boot.wim,下一步, 2.选WIN10XPE工程,下一步, 3.patch跳过,直接下一步, 4.点1-run,再点2-make_iso  详情 回复 发表于 2018-6-25 12:45
回复

使用道具 举报

24#
 楼主| 发表于 2018-6-25 12:45:30 | 只看该作者
MPFENG 发表于 2018-6-25 12:33
弱弱的问一下,有几人会用?

点8下鼠标

1.点【准备】,选择 install.wim,选择 boot.wim,下一步,
2.选WIN10XPE工程,下一步,
3.patch跳过,直接下一步,
4.点1-run,再点2-make_iso

点评

我昨天测试就这样,今天按你的步骤还这样,  详情 回复 发表于 2018-6-25 12:56
回复

使用道具 举报

25#
发表于 2018-6-25 12:56:17 | 只看该作者
slore 发表于 2018-6-25 12:45
点8下鼠标

1.点【准备】,选择 install.wim,选择 boot.wim,下一步,

我昨天测试就这样,今天按你的步骤还这样,
  1. [WIN10XPE] --- 构建信息
  2. WB_BASE=F:\sources\boot.wim
  3. WB_BASE_INDEX=1
  4. WB_PROJECT=WIN10XPE
  5. WB_SKIP_UFR=1
  6. WB_SKIP_URR=1
  7. WB_SRC=F:\sources\install.wim
  8. WB_SRC_INDEX=1
  9. WB_STRAIGHT_MODE=1
  10. WB_UI_LANG=zh-CN
  11. WB_WORKSPACE=

  12. 工序:获取WIM文件信息
  13. WB_PE_ARCH=x64
  14. WB_PE_BUIID=1000
  15. WB_PE_LANG=zh-CN
  16. WB_PE_VER=10.0.17692

  17. 工序:挂载 WIM 映像
  18. Extracting file data: 70 MiB of 70 MiB (100%) done
  19. Done extracting files.
  20. 已复制         1 个文件。
  21. [WIN10XPE] --- MOUNT [C:\Users\10\Downloads\wimbuilder2\_Factory_\target\WIN10XPE\boot.wim:1] -* [C:\Users\10\Downloads\wimbuilder2\_Factory_\target\WIN10XPE\mounted]

  22. 部署映像服务和管理工具
  23. 版本: 10.0.17134.1

  24. 正在安装映像
  25. [==========================100.0%==========================]
  26. 操作成功完成。

  27. 系统找不到指定的路径。
  28. 'main.bat' 不是内部或外部命令,也不是可运行的程序
  29. 或批处理文件。
  30. [WIN10XPE] --- UNMOUNT [C:\Users\10\Downloads\wimbuilder2\_Factory_\target\WIN10XPE\mounted] /commit

  31. 部署映像服务和管理工具
  32. 版本: 10.0.17134.1

  33. 映像文件 : C:\Users\10\Downloads\wimbuilder2\_Factory_\target\WIN10XPE\boot.wim
  34. 映像索引 : 1

  35. 错误: 32

  36. 另一个程序正在使用此文件,进程无法访问。

  37. 可以在 C:\Windows\Logs\DISM\dism.log 上找到 DISM 日志文件
  38. Cleanup finished.
  39. [WIN10XPE] --- EXPORT [C:\Users\10\Downloads\wimbuilder2\_Factory_\target\WIN10XPE\boot.wim:1] -* [C:\Users\10\Downloads\wimbuilder2\_Factory_\target\WIN10XPE\build\boot.wim]

  40. 部署映像服务和管理工具
  41. 版本: 10.0.17134.1

  42. 正在导出映像
  43. [==========================100.0%==========================]
  44. 操作成功完成。
  45. C:\Users\10\Downloads\wimbuilder2\_Factory_\target\WIN10XPE\boot.wim
  46. 另一个程序正在使用此文件,进程无法访问。

  47. C:\Users\10\Downloads\wimbuilder2>
复制代码

点评

看过程对boot.wim的加载已经完成,但是准备打补丁时,没有找到: Projects\WIN10XPE\main.bat 然后程序自动 卸载挂载的WIM文件,但是可能注册表的正在使用,没有卸载掉, 所以卸载WIM没有成功。 确认方法  详情 回复 发表于 2018-6-25 13:05
回复

使用道具 举报

26#
 楼主| 发表于 2018-6-25 13:05:19 | 只看该作者
本帖最后由 slore 于 2018-6-25 13:07 编辑
xuexiang 发表于 2018-6-25 12:56
我昨天测试就这样,今天按你的步骤还这样,


看过程对boot.wim的加载已经完成,但是准备打补丁时,没有找到:
Projects\WIN10XPE\main.bat

  1. 系统找不到指定的路径。
  2. 'main.bat' 不是内部或外部命令,也不是可运行的程序
  3. 或批处理文件。
复制代码


然后程序自动 卸载挂载的WIM文件,但是可能注册表的正在使用,没有卸载掉,
所以卸载WIM没有成功。

确认方法:
bin\_process.bat的第一行 echo off改成echo on,

下面找下main.bat,
前一句应该是 pushd 切换到 Project\WIN10XPE\ 目录,
这句失败了,不过看到你路径是
C:\Users\10\Downloads\wimbuilder2\
没有空格,奇怪字符,不该失败的。

确认注册表是否被正常卸载,打开regedit,看下HKEY_LOCAL_MACHINE下面是否有:
Src_Software,Src_SYSTEM,Tmp_Software,Tmp_SYSTEM。

有的话,到build界面,先选择0-cleanup。清除上次残留注册表和boot,wim挂载。

=============================================
你的WB_WORKSPACE=是空?
这个请用默认的 "." 使用当前目录试试。

点评

不支持预览版,17134直接成功  详情 回复 发表于 2018-6-25 15:34
回复

使用道具 举报

27#
发表于 2018-6-25 16:07:42 | 只看该作者
预览版不能制作,过程会出错,不能卸载保存

点评

关于预览版(10.0.17692.1000)不能卸载保存的原因是,自动挂载的注册表项目没有卸载干净导致的。 问题代码: wimbuilder2/bin/PERegPorter.bat 卸载前先检查了是否挂载了,HKLM不能直接卸载所以找了一个子项去  详情 回复 发表于 2018-6-26 15:39
谢谢反馈,我下载预览版看看。  发表于 2018-6-25 17:10
回复

使用道具 举报

28#
发表于 2018-6-26 08:18:09 | 只看该作者
生成纯净的PE太好了
回复

使用道具 举报

29#
发表于 2018-6-26 12:58:10 | 只看该作者
技术宅呀!
回复

使用道具 举报

30#
 楼主| 发表于 2018-6-26 15:39:54 | 只看该作者
xuexiang 发表于 2018-6-25 16:07
预览版不能制作,过程会出错,不能卸载保存

关于预览版(10.0.17692.1000)不能卸载保存的原因是,自动挂载的注册表项目没有卸载干净导致的。

问题代码:
wimbuilder2/bin/PERegPorter.bat
  1. rem check existence before UNLOAD
  2. rem   Query -* HKEY_USERS\.DEFAULT\Environment
  3. rem   Query -* HKEY_LOCAL_MACHINE\SAM\SAM
  4. rem   Query -* HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
  5. rem   Query -* HKEY_LOCAL_MACHINE\SYSTEM\Software
  6. rem   Query -* HKEY_CURRENT_USER\Environment
复制代码

卸载前先检查了是否挂载了,HKLM不能直接卸载所以找了一个子项去检查,
HKEY_USERS\.DEFAULTHKEY_CURRENT_USER找的是Environment

发现最新预览版和RS4的注册表不一样,没有Environment子项,所以导致注册表扔被挂载到Tmp_DEFAULT,没有卸载掉,所以wim镜像卸载保存失败。

因为已经挂载到主系统的HKLM\Tmp_xxxx下面了,所以直接判断Tmp_xxxx是否存在即可,修改代码如下即可:
if /i "x%2"=="xUNLOAD" (         if /i "x%2"=="xUNLOAD" (
-    reg query HKLM\%1_DEFAULT\Environment /ve 2>nul 1>&2
+   reg query HKLM\%1_DEFAULT /ve 2>nul 1>&2
   if ERRORLEVEL 1 goto :DEAL_SAM           if ERRORLEVEL 1 goto :DEAL_SAM
)



==========================================================
其他改善代码如下:
* 基础wim文件不存在是,默认显示【准备】页面,而不是直接到【工程】界面

assets/js/init.js
i18n_trans();
         
function page_init() {         function page_init() {
+    if (!fso.FileExists($wb_base)) {
+        $('#menu_start').click();
+        return;
+    }

     $('#menu_project').click();
}

* 因默认访问当前目录的Projects文件夹,暂时禁用WORKSPACE选择按钮

<a href="#" disabled="disabled" id="wb_workspace_folder_btn" class="ibutton browse i18n-title"
     title="Set the build workspace">Browse</a><br/>             title="Set the build workspace">Browse</a><br/>


会基本的HTML,bat,js就可以自己改进/自定义WimBuilder。

评分

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

查看全部评分

回复

使用道具 举报

31#
发表于 2018-6-26 16:18:53 | 只看该作者
请教大神:
      如图的情况,是什么原因引起的?应如何处理?
谢谢!

2018-06-26.png (68.04 KB, 下载次数: 330)

2018-06-26.png

2018-06-26 (1).png (86.17 KB, 下载次数: 318)

2018-06-26 (1).png

点评

问题1: pe_reg我是想自己做一个宏的,自动替换*.reg文件中的, [HKEY_LOCAL_MACHINE\SOFTWARE\xxxx] 为 [HKEY_LOCAL_MACHINE\Tmp_SOFTWARE\xxxx] 的,看到winbuilder中大量的reg文件已经是Tmp_Software了, 所  详情 回复 发表于 2018-6-26 16:57
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-25 03:31

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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