无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: slore
打印 上一主题 下一主题

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

    [复制链接]
721#
发表于 2019-5-25 20:37:30 | 只看该作者
gen_x 发表于 2019-5-25 19:09
楼主 还是我 我想在一个现有的wim里面添加bitlocker组件,原贴地址:http://bbs.wuyou.net/forum.php?mod=v ...

忘记回来说了,就上面说的改了bat后执行他,然后能开启了了现在,但估计是少文件了吧。我直接手动addfile进去,然后又开不起来了。。。。。


顺便说下。。。bitlocker对我个人比较有用,认为加密还是有必要的,而且兼容性较强(虽然知道有强破的方法)。。。所以不算是偏执哈#(捂脸)

点评

你用install.wim+winre.wim生成一个PE,然后用promon.exe监控这个命令的访问的文件和注册表。 对比下你的PE缺少啥,补充看看。 我是以按照winre.wim为基础添加文件的,winre.wim有基础bitlocker的组件, 可以用  详情 回复 发表于 2019-5-25 22:10
回复

使用道具 举报

722#
发表于 2019-5-25 21:39:19 | 只看该作者
win8pe的dsmsvc服务需要注册表SystemSetupInProgress的值为1才能启动,看来需要高手破解了。

点评

8/8.1都是这样吗?  详情 回复 发表于 2019-5-26 07:52
回复

使用道具 举报

723#
发表于 2019-5-25 21:58:27 来自手机 | 只看该作者
最新情况
感觉在一点点进步。。。。

IMG_20190525_215309.jpg (34.27 KB, 下载次数: 118)

IMG_20190525_215309.jpg
回复

使用道具 举报

724#
 楼主| 发表于 2019-5-25 22:10:56 | 只看该作者
gen_x 发表于 2019-5-25 20:37
忘记回来说了,就上面说的改了bat后执行他,然后能开启了了现在,但估计是少文件了吧。我直接手动addfile ...


你用install.wim+winre.wim生成一个PE,然后用promon.exe监控这个命令的访问的文件和注册表。
对比下你的PE缺少啥,补充看看。

我是以按照winre.wim为基础添加文件的,winre.wim有基础bitlocker的组件,
可以用命令行查询,和解锁。我的补丁补了驱动的GUI解锁界面。
自定义的PE可能精简掉些文件了。

你自己对比下吧。我用20H1(10.0.18898)生成了一个,访问的日志见附件。
Excel过滤Load Image,把文件名添加到main.bat试试。
添加了还不行的话,得考虑注册表了。

BitLocker-Logfile.7z (32.29 KB, 下载次数: 6)

点评

提問的 PE 版本是 17134.167 X64 , 用 17134.1 的 ISO 來補檔 老實說新版本不會勾選 , 用 2019.02.04 的舊版本處理 [attachimg]394040[/attachimg] [attachimg]394041[/attachimg] 處理後開機 [attachimg]3  详情 回复 发表于 2019-5-26 03:55
回复

使用道具 举报

725#
发表于 2019-5-26 03:39:40 | 只看该作者

;用系统服务SysMain,得到的pf文件,得到文件启动列表
;BITLOCKERWIZARDELEV.EXE \BITLOCKERWIZARD.EXE
\Windows\System32\advapi32.dll
\Windows\System32\atlthunk.dll
\Windows\System32\bcd.dll
\Windows\System32\bcrypt.dll
\Windows\System32\BCRYPTPRIMITIVES.DLL
\Windows\System32\BDEHDCFGLIB.DLL
\Windows\System32\bdeui.dll
\Windows\System32\BITLOCKERWIZARD.EXE
\Windows\System32\BITLOCKERWIZARDELEV.EXE
\Windows\System32\C_1252.NLS
\Windows\System32\C_950.NLS
\Windows\System32\cabinet.dll
\Windows\System32\cfgmgr32.dll
\Windows\System32\clbcatq.dll
\Windows\System32\combase.dll
\Windows\System32\comdlg32.dll
\Windows\System32\COREMESSAGING.DLL
\Windows\System32\COREUICOMPONENTS.DLL
\Windows\System32\credui.dll
\Windows\System32\crypt32.dll
\Windows\System32\CRYPTBASE.DLL
\Windows\System32\cryptsp.dll
\Windows\System32\devobj.dll
\Windows\System32\dpapi.dll
\Windows\System32\dsreg.dll
\Windows\System32\dui70.dll
\Windows\System32\duser.dll
\Windows\System32\dwmapi.dll
\Windows\System32\en-US\IMAGERES.DLL.MUI
\Windows\System32\fltLib.dll
\Windows\System32\fveapi.dll
\Windows\System32\fvecerts.dll
\Windows\System32\FVESKYBACKUP.DLL
\Windows\System32\fveui.dll
\Windows\System32\fvewiz.dll
\Windows\System32\gdi32.dll
\Windows\System32\GDI32FULL.DLL
\Windows\System32\imagehlp.dll
\Windows\System32\imageres.dll
\Windows\System32\imm32.dll
\Windows\System32\KERNEL.APPCORE.DLL
\Windows\System32\kernel32.dll
\Windows\System32\KERNELBASE.DLL
\Windows\System32\locale.nls
\Windows\System32\msasn1.dll
\Windows\System32\msctf.dll
\Windows\System32\msimg32.dll
\Windows\System32\MSVCP_WIN.DLL
\Windows\System32\MSVCP110_WIN.DLL
\Windows\System32\msvcrt.dll
\Windows\System32\ncrypt.dll
\Windows\System32\netapi32.dll
\Windows\System32\netutils.dll
\Windows\System32\ntasn1.dll
\Windows\System32\ntdll.dll
\Windows\System32\ntmarta.dll
\Windows\System32\ole32.dll
\Windows\System32\oleacc.dll
\Windows\System32\oleaccrc.dll
\Windows\System32\oleaut32.dll
\Windows\System32\powrprof.dll
\Windows\System32\profapi.dll
\Windows\System32\psapi.dll
\Windows\System32\ReAgent.dll
\Windows\System32\rpcrt4.dll
\Windows\System32\rpcss.dll
\Windows\System32\sechost.dll
\Windows\System32\SHCore.dll
\Windows\System32\shell32.dll
\Windows\System32\shlwapi.dll
\Windows\System32\SogouYS.ime
\Windows\System32\SOGOUYSTSF.IME
\Windows\System32\tbs.dll
\Windows\System32\TEXTINPUTFRAMEWORK.DLL
\Windows\System32\TPMCOREPROVISIONING.DLL
\Windows\System32\tzres.dll
\Windows\System32\ucrtbase.dll
\Windows\System32\user32.dll
\Windows\System32\uxtheme.dll
\Windows\System32\version.dll
\Windows\System32\vssapi.dll
\Windows\System32\vsstrace.dll
\Windows\System32\win32u.dll
\Windows\System32\WINDOWS.STORAGE.DLL
\Windows\System32\winhttp.dll
\Windows\System32\WinTypes.dll
\Windows\System32\wkscli.dll
\Windows\System32\Wldap32.dll
\Windows\System32\ws2_32.dll
\Windows\System32\xmllite.dll
\Windows\WINDOWSSHELL.MANIFEST

评分

参与人数 1无忧币 +5 收起 理由
slore + 5 赞一个!

查看全部评分

回复

使用道具 举报

726#
发表于 2019-5-26 03:55:44 | 只看该作者
slore 发表于 2019-5-25 22:10
你用install.wim+winre.wim生成一个PE,然后用promon.exe监控这个命令的访问的文件和注册表。
对比下 ...

提問的 PE 版本是 17134.167 X64 , 用 17134.1 的 ISO 來補檔
老實說新版本不會勾選 , 用 2019.02.04 的舊版本處理




處理後開機




依據上述錯誤補兩個檔


最後完整補檔
  1. ;BitLocker
  2. Windows\System32\bdeui.dll
  3. Windows\System32\fveapi.dll
  4. Windows\System32\fvecerts.dll
  5. Windows\System32\fveui.dll
复制代码








点评

感谢提供详细的图文说明。 新版本将没有界面选择的项目整合,使得界面简洁些,确实存在组件如果一个没选的话, 【组件】的这些项目不会应用的问题。 但是还是建议用新版本,看了WimBuilder2的说明应该明白,  详情 回复 发表于 2019-5-26 06:57

评分

参与人数 1无忧币 +5 收起 理由
slore + 5 很给力!

查看全部评分

回复

使用道具 举报

727#
 楼主| 发表于 2019-5-26 06:57:04 | 只看该作者
本帖最后由 slore 于 2019-5-26 07:00 编辑
nf17b 发表于 2019-5-26 03:55
提問的 PE 版本是 17134.167 X64 , 用 17134.1 的 ISO 來補檔
老實說新版本不會勾選 , 用 2019.02.04 的 ...


感谢提供详细的图文说明。

新版本将没有界面选择的项目整合,使得界面简洁些,确实存在组件如果一个没选的话,
【组件】的这些项目不会应用的问题。



但是还是建议用新版本(19H1之后自动补mun文件),看了WimBuilder2的说明应该明白(补丁结构),
把BitLocker变成独立组件很容易(补丁节点,可以在补丁树上打勾选择),
只用给下面路径添加一个main.html,即使是0大小的空文件也可以。
WimBuilder2\Projects\WIN10XPE\01-Components\BitLocker\



另一个方法就是我上面评论提到的:
选择【组件】-【Windows 附件】,但是去掉【画图】和【Windows图片查看器】。


点评

是的,看到新版本界面做了整合,所以我采用了直接把bitlocker的bat和main的整合。这样什么都不选,直接运行构建就行了  详情 回复 发表于 2019-5-27 19:27
感谢  详情 回复 发表于 2019-5-27 19:26
回复

使用道具 举报

728#
发表于 2019-5-26 07:52:56 | 只看该作者
红毛樱木 发表于 2019-5-25 21:39
win8pe的dsmsvc服务需要注册表SystemSetupInProgress的值为1才能启动,看来需要高手破解了。

8/8.1都是这样吗?
回复

使用道具 举报

729#
 楼主| 发表于 2019-5-26 10:41:24 | 只看该作者
D:\D e v\UTF8-PATH-AND-LIST.TEST3>dir /b
mype-wim-iso.MODEL.3.iso
wimbuilder2-master.(cn-tw-en-jp-kr)(微软-微軟-Microsoft-マイクロソフト-마이크로소프트
wimbuilder2-master.0
wimbuilder2-master‎(
wimbuilder2-master‎2016‎年‎6‎月‎17‎日,‏‎02518
wimbuilder2-master中文


关于这种路径,其实用最简单的英文就好了嘛。
ANSI的,非UNICODE的程序多少都是有问题,我手里简单UltraEdit都无法编辑这目录里面的文本了。


HTA,批处理的环境变量是支持的,非系统语言支持的文字,
但是通过vbs保存文本或者自动生成的批处理,导致编码错误,无法利用。

具体出错有以下原因:
1.默认保存界面选项到auto_config.js,如果使用测试boot.wim将无法保存选项。(以修改为相对路径test\boot.wim)
2.默认preset中对壁纸设定用的绝对路径project.full_path + "\_CustomFiles_\wallpaper.jpg",导致无法保存_patches_opt.bat
   (以修改为"%WB_ROOT%\Projects\...\_CustomFiles_\wallpaper.jpg")

但是如果非相对路径,选择其他目录,依然存在无法使用的问题。这种情况请将壁纸复制到_CustomFiles_下,或者简单目录(D:\wallpapers\xxx.jpg)选择。


3. _precess.bat的调用,其实WimBuilder.cmd中已经将bin目录放到PATH中了,直接调用即可。
HTA界面中的调用全部改成相对路径,或者省略路径。

4._process.bat中挂载镜像,卸载等使用相对路径。(处理复杂多字节,文件名中有括号"()"字符,将影响批处理。)

5. 补丁的main.bat,last.bat及相关调用脚本,以及lib\macros的宏,必须使用绝对路径,因为工作目录可能被cd切走,
相对路径无法保证。(这也是最初都用绝对路径)

这里当前的补丁和lib引用的路径变量都改了。(以后写自定义补丁需要注意,用_WB_PE_WIM的话,要自己补充%WB_ROOT%),
WB_PE_DIR需要用WB_PE_PATH代替,不过除了精简wim,其他补丁不用。

改起来比想的复杂多了,花了半天时间都改好了。不过还是建议直接放到D:\Tools\WimBuilder2这种简单路径下使用。
回复

使用道具 举报

730#
 楼主| 发表于 2019-5-26 10:48:15 | 只看该作者

至于从第三方install.wim中提取,中文名的文件。
我看了你的例子,这些正常操作系统都是英文的,然后通过desktop.ini让人看着名字是中文的来解决。

wimlib-image支持UTF8的文件,那么我添加了一个AddFilesByFile.cmd宏一句话调用wimlib就行了。

你的mype.txt保存UTF8就行了。


AddFilesByFile.cmd
  1. echo [MACRO]AddFilesByFile %1
  2. rem extract %1 to mounted directory with wimlib

  3. call wimextract "%WB_SRC%" %WB_SRC_INDEX% @"%~1" --dest-dir="%_WB_MNT_PATH%" --no-acls --nullglob
复制代码


原先写的AddFilesByList.cmd宏,使用生成临时文件,用AddFiles调用,
好处是,将自动补充 .mui, .mun这种关联文件。

文件编码转换的脚本,工具第3方的有,但是大部分是只用x86,有点恶心,
所以我用lua也写一个编码转换库,可以用于PE,不过感觉直接AddFilesByFile更简单,自己保存txt为UTF8编码,
没必要程序进行转换。
回复

使用道具 举报

731#
 楼主| 发表于 2019-5-26 11:04:38 | 只看该作者
本帖最后由 slore 于 2019-5-26 23:20 编辑

2019-05-26
修复:专门测试用的复杂多字节文件路径无法使用问题
新增:AddFilesByList, AddFilesByFile 宏命令
新增:使用完整install.wim的SYSTEM注册表文件选项
新增:完整系统任务管理器 组件
修复:BitLocker在20H1上没有菜单问题
修复:使用修改过的PE,无法添加BitLocker功能问题
修复:使用ADK的PE,无法开启DWM服务问题
新增:_CustomFiles_补充main.html使得其成为一个特殊“补丁” —— "_私人定制_"
       作为特殊补丁,将最优先执行此补丁的main.bat与last.bat
       作为特殊补丁,新增了几个特别的文件,
       _Prepare_.bat --- wim挂载前运行,注册表加载前运行
       _Premain_.bat  --- 工程目录的main.bat运行前执行(仅设计,感觉没必要没添加)
       _PreISO_.bat  --- 创建ISO镜像前将调用(可以用来修复预览版BCD,解决UFEI启动问题,复制外置工具等,暂时为空)
更新:wimlib为1.13.1
修复:快速构建按钮不可用问题
修复:无法对Windows 7系统进行构建问题(mun文件的自动添加处理仅19H1以上才进行)
修复:禁用cmd的AutoRun功能无效的问题(更改拼写错误 HKCR=>HKCU)

本次更新主要为了后续更新,进行结构调整以及细小问题修正,对于生成PE,无实质更新。
“私人订制”补丁,将补充 “自动下载第3方工具”,“自动更新第3方工具”,“我的主题”,以及 “我的驱动”, “驱动清单”等,
针对特定机器加速启动处理。

以上更新已经提交到github的代码库,想尝鲜的自行下载。
打包PECMD,StartIsBack,PENetwork等第3方工具的附件包,有时间了更新。

点评

大佬,你的更新怎么论坛没有看到?  详情 回复 发表于 2019-5-27 15:22
回复

使用道具 举报

732#
发表于 2019-5-26 11:49:46 | 只看该作者
我也加入了那个系统弹U盘

捕获.PNG (544.69 KB, 下载次数: 108)

捕获.PNG

点评

怎么做到的,我怎么还是不行?  详情 回复 发表于 2019-5-27 14:14
弹出之后这个图标点不动了,只能刷新explorer  详情 回复 发表于 2019-5-26 14:51
我打算USB弹出消息补了再添加到工程,这加的文件不如hotswap。  发表于 2019-5-26 11:51
回复

使用道具 举报

733#
发表于 2019-5-26 11:57:09 | 只看该作者
我是小青蛙 发表于 2019-5-26 11:49
我也加入了那个系统弹U盘

回复

使用道具 举报

734#
发表于 2019-5-26 14:51:38 来自手机 | 只看该作者
我是小青蛙 发表于 2019-5-26 11:49
我也加入了那个系统弹U盘

弹出之后这个图标点不动了,只能刷新explorer

点评

那个图标会消失的只是不是立即消失可能要个两三秒  详情 回复 发表于 2019-5-26 15:14
回复

使用道具 举报

735#
发表于 2019-5-26 15:14:09 | 只看该作者
本帖最后由 我是小青蛙 于 2019-5-26 15:19 编辑
红毛樱木 发表于 2019-5-26 14:51
弹出之后这个图标点不动了,只能刷新explorer


那个图标会消失的,弹出以后U盘拔了要个两三秒就消失了。
回复

使用道具 举报

736#
发表于 2019-5-27 14:14:28 | 只看该作者
我是小青蛙 发表于 2019-5-26 11:49
我也加入了那个系统弹U盘

怎么做到的,我怎么还是不行?

点评

就是前面写的那种 原生弹出需要: 服务 dsmsvc (Device Setup Manager) 文件 DeviceSetupManager*.dll 初始化PE之后更改注册表SystemSetupInProgress值为0,接着禁用dsmsvc服务,再开启dsmsvc服务  详情 回复 发表于 2019-5-27 14:25
回复

使用道具 举报

737#
发表于 2019-5-27 14:25:44 | 只看该作者
本帖最后由 我是小青蛙 于 2019-5-27 14:28 编辑
homyang 发表于 2019-5-27 14:14
怎么做到的,我怎么还是不行?


就是前面写的那种
原生弹出需要:
服务 dsmsvc (Device Setup Manager)
文件 DeviceSetupManager*.dll
初始化PE之后更改注册表SystemSetupInProgress值为0,接着禁用dsmsvc服务,再开启dsmsvc服务
如果还不行可能PE缺少其它文件

点评

青蛙好。。。  详情 回复 发表于 2019-5-27 15:21
回复

使用道具 举报

738#
发表于 2019-5-27 15:21:53 来自手机 | 只看该作者
我是小青蛙 发表于 2019-5-27 14:25
就是前面写的那种
原生弹出需要:
服务 dsmsvc (Device Setup Manager)

青蛙好。。。
回复

使用道具 举报

739#
发表于 2019-5-27 15:22:46 来自手机 | 只看该作者
slore 发表于 2019-5-26 11:04
2019-05-26
修复:专门测试用的复杂多字节文件路径无法使用问题
新增:AddFilesByList, AddFilesByFile 宏 ...

大佬,你的更新怎么论坛没有看到?
回复

使用道具 举报

740#
发表于 2019-5-27 19:26:04 | 只看该作者
slore 发表于 2019-5-26 06:57
感谢提供详细的图文说明。

新版本将没有界面选择的项目整合,使得界面简洁些,确实存在组件如果一个 ...

感谢
回复

使用道具 举报

741#
发表于 2019-5-27 19:27:56 | 只看该作者
slore 发表于 2019-5-26 06:57
感谢提供详细的图文说明。

新版本将没有界面选择的项目整合,使得界面简洁些,确实存在组件如果一个 ...

是的,看到新版本界面做了整合,所以我采用了直接把bitlocker的bat和main的整合。这样什么都不选,直接运行构建就行了

点评

不建议自己整合main.bat,比如BitLocker我针对20H1做了右键的更新, 你还得自己再整合。 如果你想默认选择,工具提供“预设”,_assets_\preset\ 你把default.js复制为custom.js,然后 添加一个 选项就好了  详情 回复 发表于 2019-5-27 20:37
回复

使用道具 举报

742#
 楼主| 发表于 2019-5-27 20:37:09 | 只看该作者
gen_x 发表于 2019-5-27 19:27
是的,看到新版本界面做了整合,所以我采用了直接把bitlocker的bat和main的整合。这样什么都不选,直接运 ...

不建议自己整合main.bat,比如BitLocker我针对20H1做了右键的更新,
你还得自己再整合。

如果你想默认选择,工具提供“预设”,_assets_\preset\
你把default.js复制为custom.js,然后
添加一个
  1. "component.bitlocker":true,
复制代码

选项就好了。

或者直接改default.js也行(不过如果我更新,添加了新的默认选项,需要自己比差分)。


当然,如果你希望不管选什么预设清单,都默认都补充BitLocker的话,

本次新增的“_私人定制_” --- _CustomFiles_\main.bat添加一行:
  1. set opt[component.bitlocker]=true
复制代码

即可。
回复

使用道具 举报

743#
发表于 2019-5-27 21:44:51 | 只看该作者
楼主我又回来了
现在bitlocker能跑了,但是其他的跑不了,只有teamviewer、Chrome那些不行,dism++可以

微信图片_20190527214352.png (8.41 KB, 下载次数: 115)

微信图片_20190527214352.png
回复

使用道具 举报

744#
发表于 2019-5-27 21:44:56 | 只看该作者
楼主我又回来了
现在bitlocker能跑了,但是其他的跑不了,只有teamviewer、Chrome那些不行,dism++可以

点评

组件的vcruntime你勾选了没。第三方我测试的少,你是不要精简winsxs。使用完整winre  发表于 2019-5-27 22:30
回复

使用道具 举报

745#
 楼主| 发表于 2019-5-28 00:48:49 | 只看该作者
本帖最后由 slore 于 2019-5-28 00:51 编辑

-1.文件夹右键打开cmd按键W与系统新建W冲突,请修改下,简单点的改为cmd,同样希望从根本解决,


操作系统亦是如此。例如 powershell的S和创建快捷方式的S重复。
字母就那么多,第三方工具也有菜单,无法避免。

这种因个人习惯不同的,请利用“私人定制”功能。

更新github上的最新版,复制 MyCustom_Samples\CmdMenuName.bat 到 MyCustom 下面。

-2.15063制作的新建,点不出来,(与卡死服务有关)最新版本好像没事。


我主要维护最近的3个版本。老版本我连ISO都删除了。
请利用“私人定制”功能,补充MyCustom\NewMenuFor15063.bat,
如果你愿意分享,就贴出来,我放到MyCustom_Samples。

参照我2年前的帖子,http://bbs.wuyou.net/forum.php?mod=viewthread&tid=386879
补充StateRepository服务及相关文件。

-3.桌面加个重启系统bat,右键,加个重启桌面命令。

明明有开始菜单,为什么要添加这些。右键我也不喜欢加花哨的菜单项。

自己X目录放置CLaunch,双击桌面空白,可以出Dock。
或者X_Desktop目录放置reboot.bat。

可以用wpeutil命令,或者WinXShell.exe -luacode wxsUI('UI_Shutdown')

建议自己添加到“私人定制” MyCustom\RebootOnDesktop.bat
echo wpeutil.exe reboot > "%X%\Users\Default\Desktop\reboot.bat"


-4.顺便提起winxshell打开的系统属性,窗口缩小时,文字部分没处理导致,
    我想只看开机时间,不行,应该改为自动换行自己加纵横滚动条,对比系统的修改下


UI_SystemInfo.zip/main.xml添加一个<纵向滚动条>标签就好了,我下次更新WinXShell时带上。
如果你只想开机时间,建议自己做一个UI_SystemTime。


使用完整software或者system,需要强制补充精简sxs与完整sys目录,
,强制的意思是本工具违反规则,直接替换系统注册表,如果不强制不合理。


因为本工具默认会加载注册表到Src,Tmp,无法自己用
AddFiles \Windows\System32\config\SOFTWARE,覆盖注册表HIVE, 因为被使用,
所以提供2个选项,在挂载前自动提取。便于后续修改。
(虽然可以主动调用call PERegPorter.bat Tmp UNLOAD)

是因为WimBuilder2框架的原因提供的选项,这个选项的后果,自行负责。
自己AddFiles *.sys。因为可能使用的修改过的SYSTEM,不用补充。
或者精简用的,自己后续bat将对SYSTEM进行变更,所以本工具没有什么违反规则一说。

完整SOFTWARE补充WinSxS,虽然我一直没有遇到蓝白屏,补充了一个Merge方式(自动判断),
完整SOFTWARE和完整WinSxs时,从install.wim更新。

你更新github上的代码试试。

5.关于ado相比不使用,有差别吗?(条件设定为系统ado可用)
   比如,中文系统与英文互相交换测试制作,可能含有中文这样路径或者文件名。


我不想维护2套编码,因为去掉ADO,所有的语言JS都是UNICODE的,
ANSI,UNICODE,UTF8会搞得混乱,而且本身BAT不支持UTF8, 会引入很多问题。
不是单纯改1,2处。

中文测试制作 中文,英文没问题,英文下就不行了。能对应,我需要实际测试环境以及修改,
相对路径的问题花了我半天了,这种简单命名就能回避的,我觉得从使用上注意就是了。

WimBuilder2虽然支持修改过的install.wim,但是还是建议官方ISO。从0开始制作。
自己解压出来,用copy命令吧。

就好比winre和install的版本要一致,是工具的要求,你能选个WIN10的winre,选个win7的install来制作。
对应版本的PE制作,在对应的语言下进行吧。

6.权限替换,把所有文件权限改everyone,

发现有一些系统服务还有dll因为1拿不到权限启动不了
。  例如noel的脚本关于3389那块改了,
在postde*.ps1查找3389退几行39行,


我删除powershell,.netfx, wow64, ps1无法运行的环境,3389端口依然可以启动。。。
这里看到了,但是我想着和权限应该没关系(我进PE看过了)。

也许这个ISO生成时已经改过了吧。我回头试试。


如果想给文件,注册表更新权限,直接config.js添加2个参数就行了(默认是1,跳过权限修改)。

  1. //skip update files' rights operation
  2. $wb_skip_ufr = '0';
  3. //skip update registry's rights operation
  4. $wb_skip_urr = '0';
复制代码


这个开启了很费时间,2,3分钟,所以建议生成一个新的boot.wim,后再在这个权限修改过的基础上更新。
(本来打算界面做选项的,Nsudo提权后,发现没必要。)

如果特定功能需要文件注册表权限,应该利用ACLRegKey宏,SetACL.exe命令对必要的文件进行处理。
而不是全部权限都改,搞不清依赖关系。
回复

使用道具 举报

746#
发表于 2019-5-28 21:21:12 | 只看该作者
想问一下通知区网络图标右键网络和共享设置要重定向到打开penetwork或者指定的某个程序,要如何改注册表?

点评

WinXShell.lua中,添加 ms-settings:network可以接管,网络图标右键, 打开网络和Internet设置, app:run或者exec命令可以让他启动PENetwork或者其他任意命令。  详情 回复 发表于 2019-5-29 13:03
WinXShell.lua => ms-settings 的某一个吧。明天我看下.  发表于 2019-5-28 23:47
回复

使用道具 举报

747#
 楼主| 发表于 2019-5-28 23:45:28 | 只看该作者

-1.文件夹右键打开cmd按键W与系统新建W冲突,
    默认系统 在桌面 或 文件夹,右键,是没有cmd的


这个菜单是有的,默认是扩展菜单类型,按住SHIFT,右键就出来了。
没有在系统上设置powershell改cmd,会显示powershell菜单,
菜单键是S,和创建快捷方式冲突。

已经保留Extended属性和系统一致。如果需要总是显示,勾选 私人定制 界面选项。


重启系统,希望加到实体文件与shutdown.bat位置

建一个X_Desktop文件夹,reboot.bat放进去就好了。

桌面右键添加 重启桌面

私人定制 界面自己设置,默认命令是taskkill /f /im explorer.exe,文件管理器也结束。

具体命令可以编辑 MyCustom\_RestartExplorerMenu.bat

另外 bin\_Process.bat      加行数到最大32766 ,新版好多RE或者系统默认不全是9001而是300

mode命令不会自动调整窗口位置,导致内容到任务栏后面不友好。
避免修改bin,影响代码更新,在 私人定制 界面提供 选项。

3.在win7我的ie不是9依旧,点构建,还有首启动2处报错


我在不同WIN7上从来没出现过,我想确认根本原因。
你的这个做法,很多空工程也创建目录不好,你保留吧。

建议你用 TXTReplace宏,写一个自动合并你的修改的脚本。简单update下。
WimBuilder.cmd很少修改。

当然建议你直接装git,右键 更新,自动就合并代码了。(如果固定一台机器的话)


使用完整software或者system,需要强制补充精简sxs与完整sys目录,


加红加粗提示补充 sys驱动文件,另外改成RegCopy SYSTEM\ControlSet001了,其他键没有意义没必要完整覆盖。


需求功能,设置权限 假设为宏为 setacl ,需要 设置为 everyone / system / 'NT SERVICE\termservice'  如何实现设置不同权限,下面实例


查看
WimBuilder2\lib\macros\_ACLRegKey.cmd

把Administrators改成 对应的用户名就是了。

新版本更新了可选参数
call _ACLRegKey RegKey everyone
call _ACLRegKey RegKey system
call _ACLRegKey RegKey "NT SERVICE\termservice"

不过你需要把这个cmd和setacl复制到wim内核,因为用户身份不能在构建时添加,
不然是WimBuilder2运行时的机器的以上用户,没有意义。

3389


基于800MB的WIM的话,没有意义。ps1我知道步骤的。
希望完成winre.wim的3389。
远程桌面 补丁中已经有了 TermService.bat,不过
启动后修改的东西,我打算做到
WimBuilder2\Projects\WIN10XPE\_CustomFiles_\PEMaterial\Autoruns\TermService3389.bat
没做完,先goto :EOF退出了。

6.权限替换,把所有文件权限改everyone,
文件全部权限修改     (懒得考虑很多,一次修改了,再也不理了,全程无忧),


WimBuilder2\Projects\WIN10XPE\_CustomFiles_\_Prepare_.bat
set WB_SKIP_UFR=0即可, 暂时沒做界面对应。




回复

使用道具 举报

748#
发表于 2019-5-29 01:51:51 | 只看该作者
是不是wimlib提示失败? 就是提示UTF8什么的
main.bat 添加文件的文件太多就这样
原因是这个wimlib的列表行数太多了,

我自己用wimlib 命令就没问题
具体的说我不太清楚是为什么,宏看起来没问题啊
是不是要改下命令

对了,卸载wim以前版本是用NSudo卸载的,
现在怎么不弄了,卸载wim不干净.

点评

文件列表,带了中文字符吧。空格,斜杠啥的。需要提取多字节文件,建议用AddFilesByFile宏。  发表于 2019-5-29 08:26
现在还是Nsudo启动吧。提示不全,如果目录空了,可以继续构建,会自动删除目录重建。  发表于 2019-5-29 08:25
回复

使用道具 举报

749#
 楼主| 发表于 2019-5-29 08:00:51 | 只看该作者
本帖最后由 slore 于 2019-5-29 08:24 编辑

2019-05-28 github最新开发版打包(版本号未更新)

WimBuilder2.part1.rar (4 MB, 下载次数: 159)
WimBuilder2.part2.rar (4 MB, 下载次数: 159)
WimBuilder2.part3.rar (3.93 MB, 下载次数: 168)


修复:专门测试用的复杂多字节文件路径无法使用问题
新增:AddFilesByList, AddFilesByFile 宏命令
新增:合并完整install.wim的SYSTEM(ControlSet001)注册表选项 [请自己确保会添加必要的SYS驱动文件]
新增:完整系统任务管理器 组件
修复:BitLocker在20H1上没有菜单问题
修复:使用修改过的PE,无法添加BitLocker功能问题
修复:使用ADK的PE,无法开启DWM服务问题
新增:_CustomFiles_补充main.html使得其成为一个特殊“补丁” —— "_私人定制_"
       作为特殊补丁,将最优先执行此补丁的main.bat与last.bat
       作为特殊补丁,新增了几个特别的文件,
       _Prepare_.bat --- wim挂载前运行,注册表加载前运行
       _Premain_.bat  --- 工程目录的main.bat运行前执行(仅设计,感觉没必要没添加)
       _PreISO_.bat  --- 创建ISO镜像前将调用(可以用来修复预览版BCD,解决UFEI启动问题,复制外置工具等,暂时为空)
更新:wimlib为1.13.1
修复:路径存在空格时,开始菜单设置界面显示异常问题
修复:快速构建按钮不可用问题
修复:无法对Windows 7系统进行构建问题(mun文件的自动添加处理仅19H1以上才进行)
修复:禁用cmd的AutoRun功能无效的问题(更改拼写错误 HKCR=>HKCU)

评分

参与人数 1无忧币 +5 收起 理由
我是小青蛙 + 5

查看全部评分

回复

使用道具 举报

750#
发表于 2019-5-29 08:41:45 | 只看该作者
这个可以有
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-29 13:30

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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