无忧启动论坛

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

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

    [复制链接]
211#
 楼主| 发表于 2019-2-11 22:22:05 | 只看该作者
lwb1 发表于 2019-2-11 16:30
驱动要不要装,还有,麻烦提供一下bat的说明


看你干嘛了,驱动对应的是要的。bat就是批处理,主要AddFiles命令添加install.wim的文件列表,
工程里面的,main.bat你看看就明白了,比如:

D:\Dev\WimBuilder2\Projects\WIN10XPE\01-Components\MMC\DiskMgr.bat
  1. @echo off
  2. rem ==========update filesystem==========
  3. call AddFiles %0 :end_files
  4. goto :end_files

  5. @windows\system32\
  6. +mui
  7. ;Disk Management
  8. diskmgmt.msc
  9. dmdlgs.dll,dmdskmgr.dll,dmdskres.dll,dmdskres2.dll,dmintf.dll
  10. dmocx.dll,dmutil.dll,dmvdsitf.dll,dmview.ocx,hhsetup.dll
  11. :end_files
复制代码


copy命令自己复制,内置的X2X可以复制当前目录的X, X_PF, X_SYS等文件夹。

修改注册表,直接reg add/delete命令,注册表已经自动挂载到
  • HKLM\tmp_Software
  • HKLM\tmp_Default
  • HKLM\tmp_SYSTEM
  • HKLM\tmp_DRIVERS

点评

抱歉,我不是特别懂bat,麻烦给我解释一下这个是干什么的。  详情 回复 发表于 2019-2-12 10:48
回复

使用道具 举报

212#
发表于 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
回复

使用道具 举报

213#
 楼主| 发表于 2019-2-12 12:30:46 | 只看该作者
本帖最后由 slore 于 2019-2-12 12:34 编辑
lwb1 发表于 2019-2-12 10:48
抱歉,我不是特别懂bat,麻烦给我解释一下这个是干什么的。
那个注释写的好像是更新什么


rem ==========update filesystem==========
的意思是,更新系统文件(文件系统)。

比方说,让PE支持,文件打开对话框(运行->浏览,任务管理器->新建任务)需要提取并添加
install.wim\windows\system32\ExplorerFrame.dll
install.wim\windows\system32\shellstyle.dll
文件,还有补充注册表信息(explorerframe.dll的CLSID),那么你可以:
main.bat
  1. rem 从install.wim提取系统文件
  2. call AddFiles %0 :end_files
  3. goto :end_files
  4. \windows\system32\ExplorerFrame.dll
  5. \windows\system32\??-??\ExplorerFrame.dll.mui
  6. \windows\system32\shellstyle.dll
  7. :end_files
  8. rem 从install.wim的SOFTWARE复制注册表信息。
  9. call RegCopy HKLM\SOFTWARE\Classes\CLSID\{056440FD-8568-48e7-A632-72157243B55B}
复制代码


如果一个目录下文件多,可以用@路径,后面直接写文件,另外也可以声明+mui将自动复制mui文件。
  1. @\windows\system32\
  2. +mui
  3. ExplorerFrame.dll,shellstyle.dll
复制代码


添加文件拖拽功能,显示复制进度条等完整的补丁main.bat你可以看:
D:\dev\WimBuilder2\Projects\WIN10XPE\shared\NewBrowseDlg\main.bat
rem ==========update filesystem(更新系统文件)==========
call AddFiles %0 :end_files
goto :end_files
\Windows\System32\%WB_PE_LANG%\comctl32.dll.mui
@\Windows\System32\
comctl32.dll
+mui
ExplorerFrame.dll

+ver > 17700
; shellstyle.dll(.mui) is now in \Windows\resources\themes\aero\shell\normalcolor
\Windows\resources\Themes\aero\shell
+ver <= 17700
shellstyle.dll
+ver*

; DragAndDrop (d2d1.dll,ksuser.dll already in Winre.wim)
DataExchange.dll,dcomp.dll,d3d11.dll,dxgi.dll
;d2d1.dll,ksuser.dll

; CopyProgress
-mui
chartv.dll,OneCoreUAPCommonProxyStub.dll
:end_files

rem ==========update registry(更新注册表)==========
rem explorerframe.dll CLSID
rem HKLM\SOFTWARE\Classes\CLSID\{056440FD-8568-48e7-A632-72157243B55B} required
rem already added by RegCopy HKLM\SOFTWARE\Classes\CLSID
回复

使用道具 举报

214#
发表于 2019-2-12 13:04:17 来自手机 | 只看该作者
支持,这个是好东西啊,希望楼主继续完善这个东西还有winxshell
回复

使用道具 举报

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

使用道具 举报

216#
发表于 2019-2-12 19:50:30 | 只看该作者
有PECMD的话,不用startnet.cmd,没有的话,要在startnet.cmd添加命令,目前是在工程的last.bat里面写入startnet.cmd命令,你自己可以copy /y mystartnet.cmd "%X_SYS%\startnet.cmd"

是先启动startnet.cmd呢,还是先启动PENetwork?

点评

我不打算弄PECMD,我才刚接触。  详情 回复 发表于 2019-2-12 22:13
用了PECMD,startnet.cmd好像就不用了。PENetwork在pecmd.ini里面启动的。  发表于 2019-2-12 21:31
回复

使用道具 举报

217#
发表于 2019-2-12 20:47:51 | 只看该作者
slore大,我觉得你应该在改进下:
可以使用其他人的成品wim,进行定制。例如:l大的pe使用了你的winxshell,使用他的pe64.wim,在准备第三栏选择pe64.wim,在补丁一项选择应用--浏览器-ie,其他取消选择,就可以为pe64.wim进行添加ie浏览器的操作,从而生成新的pe64-new.wim。既然是补丁,就其他不要动,只添加ie,我试过,如果不选择配置那里的wow64那个复选框,就会生成32位的pe,会删掉很多文件!

点评

默认设计就是这样的,补丁只添加必要文件,修改注册表。 删除操作主要是在"精简"里面,最后的last.bat里面有删除wallpaperhost.exe,setup.exe,winpesh.ini。 你是不是勾选了精简?  详情 回复 发表于 2019-2-12 20:59
回复

使用道具 举报

218#
 楼主| 发表于 2019-2-12 20:59:02 | 只看该作者
本帖最后由 slore 于 2019-2-12 21:02 编辑
my9823 发表于 2019-2-12 20:47
slore大,我觉得你应该在改进下:
可以使用其他人的成品wim,进行定制。例如:l大的pe使用了你的winxshell ...


默认设计就是支持其他人的PE,补丁只添加必要文件,修改注册表。
删除操作主要是在"精简"里面,最后的last.bat里面有删除wallpaperhost.exe,setup.exe,winpesh.ini。
你是不是勾选了精简?

你选64位PE生成32位PE就奇怪了,可能他们用的wim编辑工具导致dism无法正确读取wim的信息,日志开头有显示环境变量,如果不对,自己在 prepare.bat或者main.bat里面定义下环境变量就行了。
回复

使用道具 举报

219#
发表于 2019-2-12 21:55:53 来自手机 | 只看该作者
what?原来后边还有个精简,我展开所有选项,以为到底了!不好意思,没有拉到底部。假如使用ie下载,必须选中administrator那个选项吗?希望增加添加ie的flash插件的补丁!在这里先谢过老大了,明天再试试,早睡早起身体好!

点评

只用IE浏览网页啥的,不用admin账户。  发表于 2019-2-16 16:05
IE下载文件,必须要切换到Admin账户。flash打算加,不过暂时没顾上。  发表于 2019-2-16 16:04
回复

使用道具 举报

220#
发表于 2019-2-12 22:04:03 来自手机 | 只看该作者
slore 大,我用的是网信 g-o-v-e-r-n-m-e-n-t版win10,它点击任务栏的时间会显示出中国农历,这个农历有办法加到winxshell的那个任务栏里吗?

点评

如果你知道有其他的日历软件可以在PE下用,可以修改WinXShell.lua中 任务栏时间区域单击事件启动那个应用程序。  发表于 2019-2-12 22:59
wxsUI\Calendar.zip\main.lua修改下,添加公历转农历的100行代码可以显示。不过假期就麻烦了。  发表于 2019-2-12 22:59
回复

使用道具 举报

221#
发表于 2019-2-12 22:13:15 | 只看该作者
lwb1 发表于 2019-2-12 19:50
是先启动startnet.cmd呢,还是先启动PENetwork?

我不打算弄PECMD,我才刚接触。

点评

D:\Dev\WimBuilder2\Projects\WIN10XPE\last.bat 里面有一段当不使用PECMD时,创建启动startnet.cmd文件的处理。 你不懂批处理的话,你在74行(echo cmd.exe>>"%X32%\startnet.cmd"这句的下面), 写一个行:  详情 回复 发表于 2019-2-12 23:03
回复

使用道具 举报

222#
 楼主| 发表于 2019-2-12 23:03:21 | 只看该作者
lwb1 发表于 2019-2-12 22:13
我不打算弄PECMD,我才刚接触。


D:\Dev\WimBuilder2\Projects\WIN10XPE\last.bat
里面有一段当不使用PECMD时,创建启动startnet.cmd文件的处理(48行~73行)。

你不懂批处理的话,你在74行(echo cmd.exe>>"%X32%\startnet.cmd"这句的下面),
写一个行:
  1. copy /y startnet.cmd "%X_SYS%\startnet.cmd"
复制代码

然后你手动创建一个startnet.cmd放到Projects\WIN10XPE目录,你自己提前写好,
这个将最后复制到boot.wim\Windows\System32\startnet.cmd作为启动入口,
你想啥时候启动PENetwork.exe,你自己决定。

点评

现在网上有PECMD的命令教程吗?  详情 回复 发表于 2019-8-8 18:34
可以在PE开机时,手动启动startnet.cmd吗?startnet.cmd要改吗?(我是自己尝试用PENetWork给自己做到一半的PE加网络支持)  详情 回复 发表于 2019-2-13 15:44
回复

使用道具 举报

223#
发表于 2019-2-13 15:44:40 | 只看该作者
本帖最后由 lwb1 于 2019-2-13 15:50 编辑
slore 发表于 2019-2-12 23:03
D:\Dev\WimBuilder2\Projects\WIN10XPE\last.bat
里面有一段当不使用PECMD时,创建启动startnet.cmd文 ...


可以在PE开机后,手动启动startnet.cmd吗?startnet.cmd要改吗?(我是自己尝试用PENetWork给自己做到一半的PE加网络支持)
我不是不懂bat,我是懂得不多,我才刚开始学
回复

使用道具 举报

224#
发表于 2019-2-15 15:46:45 | 只看该作者
本帖最后由 泰立信 于 2019-2-15 15:50 编辑

20H1 Build 18836使用2月5号版本制作也能成功,感觉和19H1差别不大。
大神啥时候精简一下生成的内核呗,感觉杂乱无用的文件还挺多的

点评

还咋功能补充阶段,不想因为精简导致,功能测试出问题,所以没有做。 参考其他功能好的,比较下文件列表就能搞定,放到后面。 你可以在工程下新建一个“我的精简”文件夹,里面写一个last.bat 然后: del /q "%  详情 回复 发表于 2019-2-17 00:30
20H1 Build 18836 看來跟 19H1 Build 18334 差異的確不大 在繁中一樣卡在內建的輸入法 19H1 Build 18309 內建的5種輸入法都可以使用 [attachimg]387844[/attachimg] 19H1 Build 18334 內建的5種輸入法暫時只  详情 回复 发表于 2019-2-15 16:03
回复

使用道具 举报

225#
发表于 2019-2-15 16:03:32 | 只看该作者
泰立信 发表于 2019-2-15 15:46
20H1 Build 18836使用2月5号版本制作也能成功,感觉和19H1差别不大。
大神啥时候精简一下生成的内核呗,感 ...

20H1 Build 18836 看來跟 19H1 Build 18334 差異的確不大
在繁中一樣卡在內建的輸入法

19H1 Build 18309 內建的5種輸入法都可以使用


19H1 Build 18334 內建的5種輸入法暫時只有大易及行列可以用


20H1 Build 18836 內建的5種輸入法暫時只有大易及行列可以用

点评

正体输入法, 需要修改什么? 注册表? 我这边测试好像都不能用.  详情 回复 发表于 2019-8-20 23:30
回复

使用道具 举报

226#
发表于 2019-2-15 19:40:26 来自手机 | 只看该作者
大帅,请问18334怎么制作出双用户登录,另外打印机16299老段整出来了,能用到18334吗

点评

同问  详情 回复 发表于 2019-8-8 18:54
19H1双登录和内置输入法功能不能用,打印组件还没时间提取,不清楚19H1是否可用。  发表于 2019-2-15 23:08
回复

使用道具 举报

227#
发表于 2019-2-15 20:51:28 | 只看该作者
我生成的怎么都是黑屏只有个鼠标哪个能传个生成好的给我

点评

要admin的话,用rs5系统,要19h1的话,请只使用SYSTEM  发表于 2019-2-15 23:10
最新的7z包包含了pecmd不应该黑屏,除非,19h1选择启用Admin  发表于 2019-2-15 23:09
估计你没有展开补丁那个界面某些选项,建议你点击看看带倒三角的有子选项,并不是所有选项都有东西,有些功能还在完善!  详情 回复 发表于 2019-2-15 21:54
回复

使用道具 举报

228#
发表于 2019-2-15 21:54:41 来自手机 | 只看该作者
我是小青蛙 发表于 2019-2-15 20:51
我生成的怎么都是黑屏只有个鼠标哪个能传个生成好的给我

估计你没有展开补丁那个界面某些选项,建议你点击看看带倒三角的有子选项,并不是所有选项都有东西,有些功能还在完善!

回复

使用道具 举报

229#
发表于 2019-2-15 21:57:04 来自手机 | 只看该作者
建议看完前几楼楼主的讲解。

点评

好的我在研究下  详情 回复 发表于 2019-2-16 08:25
回复

使用道具 举报

230#
发表于 2019-2-15 23:53:19 来自手机 | 只看该作者
今天下了18334试做了一下,发现penetwork启动了不能开启无线网络,声音服务不能开启

点评

无线驱动,和声音服务没加,WinXShell的RC4.0正在改些东西。WimBuilder2这些下周补上吧。  发表于 2019-2-16 01:47
回复

使用道具 举报

231#
发表于 2019-2-16 08:25:44 | 只看该作者
my9823 发表于 2019-2-15 21:57
建议看完前几楼楼主的讲解。

好的我在研究下
回复

使用道具 举报

232#
发表于 2019-2-16 11:38:22 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

233#
 楼主| 发表于 2019-2-17 00:30:27 | 只看该作者
本帖最后由 slore 于 2019-2-17 00:32 编辑
泰立信 发表于 2019-2-15 15:46
20H1 Build 18836使用2月5号版本制作也能成功,感觉和19H1差别不大。
大神啥时候精简一下生成的内核呗,感 ...


还在功能补充阶段,不想因为精简导致功能测试出问题,浪费时间定位文件,所以没有做大的精简。
参考其他功能好的PE,比较下文件列表就能搞定,放到后面。

你可以在工程下新建一个“我的精简”文件夹,里面先放一个空的main.html,
再写一个last.bat:
  1. del /q "%X_SYS%\xx.dll"
  2. rd /s /q "%X_SYS%\folder"
  3. ...
复制代码


你自己删除就好了。也可以分享出来,
有人给我过一个列表,能精简掉100MB,基本功能还可以用,
我没有测试,所以没放进来。


回复

使用道具 举报

234#
发表于 2019-2-18 20:32:12 | 只看该作者
我终于搞定了虽然进桌面的时候是弹出个CMD我用PECMD解决了加载了配置的那个cmd

QQ截图20190218203053.png (431.81 KB, 下载次数: 214)

QQ截图20190218203053.png

点评

有点奇怪,最新版是默认带PECMD的啊。不用自己修改才对。  发表于 2019-2-18 20:52
回复

使用道具 举报

235#
发表于 2019-2-21 14:06:25 | 只看该作者
谢谢楼主的分享,为楼主点赞
回复

使用道具 举报

236#
发表于 2019-3-1 11:01:53 | 只看该作者
本帖最后由 sx3k 于 2019-3-1 11:09 编辑

我从GitHub下载最新版(2019年2月26日)wimbuilder2的生成的PE,使用VMware Workstation Pro(最新版)测试生成的PE,启动到桌面不到2分钟黑屏,上一个版本没有这个情况。

log.zip

21.24 KB, 下载次数: 7, 下载积分: 无忧币 -2

日志

点评

2-26版本补充了声卡驱动,和网络驱动。 结构调整把没有实现的功能,和不用设置的功能整合掉了。简化设置界面。 另外把WIN10XPE的最新版的差分吸收了,没太大变化,WOW64支持补充了 devrtl.dll,ncryptprov.dll,  详情 回复 发表于 2019-3-1 21:20
回复

使用道具 举报

237#
发表于 2019-3-1 12:44:07 | 只看该作者
要不要这么强大。。。太赞了。
回复

使用道具 举报

238#
发表于 2019-3-1 13:58:41 | 只看该作者
你这个没有引导自定义ISO镜像的功能,是一大缺陷!

点评

自己把你的ISO模板镜像复制到 _ISO_ 目录  发表于 2019-3-1 21:20
回复

使用道具 举报

239#
发表于 2019-3-1 18:58:07 | 只看该作者
本帖最后由 我是小青蛙 于 2019-3-1 19:35 编辑

大佬问下我想给一个win10pe添加MTP支持出现下面的错误drvinst.exe也用的破解的用您的工具生成的同版win10 MTP倒是没问题,用虚拟机看驱动加载正常

未命名.jpg (345.48 KB, 下载次数: 189)

未命名.jpg

QQ截图20190301193247.png (135.85 KB, 下载次数: 209)

QQ截图20190301193247.png

点评

哦,别的版本的PE... 你用的老版本的drvinst补丁,你看 D:\Dev\WimBuilder2\Projects\WIN10XPE\Patch_drvinst\main.bat 就知道了,只处理部分版本. 新版本使用JFX的通用补丁,适用于全部版本.  详情 回复 发表于 2019-3-1 21:26
drvinst.exe你可以复制出来,和 原始的winre.wim比较是不是一样. 另外,你的截图看还是老版本的MTP支持,请使用最新版.  发表于 2019-3-1 21:22
回复

使用道具 举报

240#
 楼主| 发表于 2019-3-1 21:20:06 | 只看该作者
本帖最后由 slore 于 2019-3-1 21:27 编辑
sx3k 发表于 2019-3-1 11:01
我从GitHub下载最新版(2019年2月26日)wimbuilder2的生成的PE,使用VMware Workstation Pro(最新版)测试 ...


2-26版本补充了声音设置, 声卡驱动,和网络驱动
对补丁结构进行了调整,把没有实现的功能,和不用设置的功能整合掉了。简化设置界面。

另外把WIN10XPE的最新版的差分吸收了,没太大变化,WOW64支持补充了
devrtl.dll,ncryptprov.dll,然后就是IE补充了些文件。

不过你的选项,没有 音频,网络支持,和IE。应该没有影响才对。

2分钟黑屏的话,是不是开始菜单StartIsBack不兼容?你有自己更新么?还是用的StartIsBack补丁?

你先试试不要选开始菜单,不要WOW64支持看看有没有问题。

没有完全测试,所以我没在帖子中进行更新。

如果确实有问题, github上你可以选择2/9号的使用老版本.
https://github.com/slorelee/wimb ... 1a70649d1b3b12e3be8

不过还是感谢对最新版的测试,我也用17763.107 x64制作下试试.
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-23 15:36

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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