无忧启动论坛

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

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

    [复制链接]
5281#
发表于 2020-12-9 18:58:07 | 只看该作者
对了,指向盘符“Z”,会与winntsetup起冲突,他执行后,会把EFI分区分配给"Z"的,玩PE的人一般都会去碰winntsetup的,你自己不碰他的吗
回复

使用道具 举报

5282#
 楼主| 发表于 2020-12-9 19:29:24 | 只看该作者
本帖最后由 slore 于 2020-12-9 19:33 编辑
550 发表于 2020-12-9 18:58
对了,指向盘符“Z”,会与winntsetup起冲突,他执行后,会把EFI分区分配给"Z"的,玩PE的人一般都会去碰win ...

我PE都很少用。Z:是我正常系统的虚拟内存盘。正常系统下开winntsetup干嘛,直接setup保留数据更新,或者进PE全格运行setup。
要是我用winntsetup的话,UserConfig.cmd里批处理把Z:改成其他盘就好了,也没啥影响。

其实设置成X盘也行,不过WimBuilder构建时%X%就是A:\了,感觉有点别扭,虽然对构建没有啥问题。
回复

使用道具 举报

5283#
发表于 2020-12-9 20:00:54 | 只看该作者
本帖最后由 550 于 2020-12-9 20:37 编辑

现在连续的测试x64x86的对比,还是在PE里顺畅.imdisk的内存盘,在PE里构建软件事后会自动卸载,在WINDOWS里需要事前才能删除上次的挂载。在WINDOES里,32、64连续互换的时候,出来的ISO有异状,每次换位数,必须重启RAM盘,这样才能确保出来的ISO不会有出入.
在PE里,这些重启、挂载、....,啥都不用理会,就像在WINDOWS里的物理盘一样顺畅,可以连续的换位数也不用重启RAM盘





回复

使用道具 举报

5284#
发表于 2020-12-9 20:10:46 | 只看该作者
本帖最后由 狼人72105 于 2020-12-9 20:14 编辑
slore 发表于 2020-12-8 21:57
你添加代码,应该用批处理自动补丁。。。反复构建,更新内核都方便。

S大 这两天确实晕菜了 使用你的工具制作出来的PE 发现在安装QQ以后 微信始终安装不了。没有弹出安装窗口。。。已经排查了两天 没有找到原因。。。还有就是拨号的问题。。虚拟机下可以弹出拨号窗口,,,实机下不能使用 报错。。。望大佬排查。。。
回复

使用道具 举报

5285#
发表于 2020-12-9 20:18:58 | 只看该作者
本帖最后由 550 于 2020-12-9 20:36 编辑

这个画面很难逮住,既然逮住了,就贴上来了。
红箭头看上去100了,实际是没被清掉挂载。后面跟着的“错误:3”和“系统找不到指定的路径”应该是就是没被成功清掉挂载的提示了.

猜想是IMDISKZ在WIN10正常系统里,兼容性欠点;但是奇怪的是在WIN10的PE里就一路畅通,无异状.





帖子编辑错位了,应该编辑到这贴里面的

..................................

抓了点内容如下,也看不出问题焦点在哪儿


2020-12-09 20:26:17, Warning               DISM   DISM WIM Provider: PID=7960 [WIMDeleteImageMounts:(859) -> Error getting mounted image handle.] R:\WimBuilder2-Full.v2020-11-11\_Factory_\target\WIN10XPE\mounted\Program Files (HRESULT=0xC142011C) - CWimManager::WimProviderMsgLogCallback
[7960] ImageUnmarshallHandle: Reconstituting wim at R:\WimBuilder2-Full.v2020-11-11\_Factory_\target\WIN10XPE\winre.wim.
[7960] [0x800706ba] RpcCommRemoveImage:(661): RPC 服务器不可用。
[7960] [0x800706ba] WIMUnmountImageHandle:(1657): RPC 服务器不可用。
[7960] [0x8007000e] StateStoreGetMountedImageWimbootEntries:(1285): 内存资源不足,无法完成此操作。
[7960] [0x80004005] DeleteAndRestoreDirectory:(335): 未指定的错误
[7960] [0xc1420117] DeleteAndRestoreDirectory:(336)
[7960] [0xc1420117] RestoreMountDirectory:(422)
[7960] [0xc1420117] WIMUnmountImageHandle:(1674)
[7960] [0x80070003] FIOEnumerateReparsePoints:(607): 系统找不到指定的路径。
[7960] [0x80070003] CleanupExtractRemainingStubs:(534): 系统找不到指定的路径。
[7960] [0x80070003] WIMUnmountImageHandle:(1679): 系统找不到指定的路径。
[7960] [0x8144012d]
2020-12-09 20:26:25, Warning               DISM   DISM WIM Provider: PID=7960 [WIMDeleteImageMounts:(844) -> Error unmounting image.] R:\WimBuilder2-Full.v2020-11-11\_Factory_\target\WIN10XPE\mounted (HRESULT=0x80070003) - CWimManager::WimProviderMsgLogCallback
[7960] [0x80070003] UnmarshallImageHandleFromDirectory:(617): 系统找不到指定的路径。
[7960] [0x80070003] WIMGetMountedImageHandle:(2906): 系统找不到指定的路径。
[7960] [0x8144012d]
2020-12-09 20:26:25, Warning               DISM   DISM WIM Provider: PID=7960 [WIMDeleteImageMounts:(859) -> Error getting mounted image handle.] F:\WimBuilder2-Full.v2020-11-11\_Factory_\target\WIN10XPE\mounted (HRESULT=0x80070003) - CWimManager::WimProviderMsgLogCallback
[7960] [0x80070002] FIOOpenStreamById:(1383): 系统找不到指定的文件。
[7960] ImageUnmarshallHandle: Reconstituting wim at R:\WimBuilder2-Full.v2020-11-11\_Factory_\target\WIN10XPE\winre.wim.
[7960] [0x80070003] FIOVolumeOpen:(1621): 系统找不到指定的路径。
[7960] [0x80070003] FIOOpenStreamById:(1341): 系统找不到指定的路径。
[7960] [0x80070003] CleanupStateStoreCallback:(822): 系统找不到指定的路径。
[7960] [0x80070003] WdsLibEnumCallback:(427): 系统找不到指定的路径。
[7960] Badly formatted drive string: G:\.  This drive will not be cleaned.
[7960] [0x80070003] CleanupDeleteUnmountedStubs:(578): 系统找不到指定的路径。
2020-12-09 20:26:25, Info                  DISM   DISM.EXE: Image session has been closed. Reboot required=no.
2020-12-09 20:26:25, Info                  DISM   DISM.EXE:
2020-12-09 20:26:25, Info                  DISM   DISM.EXE: <----- Ending Dism.exe session ----->




回复

使用道具 举报

5286#
 楼主| 发表于 2020-12-9 21:08:14 | 只看该作者
550 发表于 2020-12-9 20:18
这个画面很难逮住,既然逮住了,就贴上来了。
红箭头看上去100了,实际是没被清掉挂载。后面跟着的“错误 ...

应该内存盘工具的模拟出来的磁盘类型的问题吧。


我用的 Primo Ramdisk,虚拟磁盘的时候有2个选项:

SCSI 硬盘 (更真实的模拟物理硬盘)
Direct-IO 硬盘  (仅模拟为逻辑硬盘,读写速度相对较快)

选 Direct-IO的时候卸载也有问题,改成 SCSI硬盘就好了。

之前直接想把Z盘文件夹符号链接mklink到 _Factory_不想改代码,结果直接挂载失败用不了,
所以才改了代码。dism命令也有问题吧,如果升级到最新也许支持的比较好。

ImDisk你看看对硬盘类型是否有啥选项。
回复

使用道具 举报

5287#
发表于 2020-12-9 21:35:17 | 只看该作者
磁盘类型

按照这个思路,把IMDISK的界面看了个全,不管英文中文里,都不带SCSI字样。TK的加强UI面板里也没提到磁盘的类型这块。
但是奇怪的是,20H2正常系统假设有兼容问题,但是在20H2的PE里却是完美兼容,这点很是奇怪.人家都是PE里不能正常运行才拿到正常系统上来的,IMDISK反了,在PE里可完美工作...
回复

使用道具 举报

5288#
 楼主| 发表于 2020-12-9 21:40:17 | 只看该作者
550 发表于 2020-12-9 21:35
按照这个思路,把IMDISK的界面看了个全,不管英文中文里,都不带SCSI字样。TK的加强UI面板里也没提到磁盘 ...

你的Windows和PE的版本一致吗?

主要看下dism模块是否一样版本。
回复

使用道具 举报

5289#
发表于 2020-12-9 21:53:37 | 只看该作者
按照你的磁盘类型思路,找了款UltraRAMDisk,也较迷你,800K不到。可以自动清空mounted的挂载了。但是还是给出了出错提示.只是内容不同了。选的就是你说的SCSI磁盘.

我再找找其他的,迷你点的不带出错提示的,先去把网上推荐的迷你的几个都下载回来,挨个试试..
回复

使用道具 举报

5290#
 楼主| 发表于 2020-12-9 21:57:06 | 只看该作者
只要能清空就好啊。
我这里偶尔也说 目录卸载不完整,但是不影响后续挂载我就没管。
回复

使用道具 举报

5291#
发表于 2020-12-9 22:10:33 | 只看该作者
本帖最后由 kuer 于 2020-12-9 22:12 编辑
slore 发表于 2020-12-9 16:57
那你选全部驱动,看看能不能驱动?

如果可以的话,可能驱动有依赖关系,也可能你找错了使用的驱动。

选全部驱动  可以驱动的 !那就说明 这个自定义驱动 并没多大意义!每次换windows版本构建  都得找出适合自己机器的那个无线驱动!
前几天给你反馈,通过筛选,19042.631版本, 华硕笔记本F441U无线驱动 是netrtwlane01.inf,
看来  并不是固定这一个的!是随windows版本变动而变动的!

要是能固定自己的无线驱动!不管什么版本的windows! 都可以自定义了!
回复

使用道具 举报

5292#
 楼主| 发表于 2020-12-9 22:13:04 | 只看该作者
本帖最后由 slore 于 2020-12-9 22:14 编辑
kuer 发表于 2020-12-9 22:10
选全部驱动  可以驱动的 !那就说明 这个自定义驱动 并没多大意思!每次换windows版本构建  都得找出适合 ...

自己合适的得自己看 设备管理器的属性。

自定义驱动还是有意义的,完整的215MB, 自己用的无线网卡也就10MB。

如果你不是给固定机器,那你最好使用完整的驱动,如果是个人用,你可以把自己常用的挑选出来。
那里又不是只能写一个驱动,你可以写多个啊。不同版本也能适用,也不安装全部。

wim会少60MB,自己看情况选择。
回复

使用道具 举报

5293#
发表于 2020-12-9 22:21:51 | 只看该作者
  1. 你的Windows和PE的版本一致吗?
复制代码

都是同一个版本20H2.所以才觉得好奇。想连续的32、64轮着翻的话,只能到PE里,在PE可以不用重启RAM盘,效率提高了不少.

我这里偶尔也说 目录卸载不完整,但是不影响后续挂载我就没管。

UltraRAMDisk,他不但SCSI可以清空,那个逻辑的速度快的那种盘也会被自动清空挂载。现在也按照你的做法,只要能清空不影响后续挂载,就算通过。暂时就选UltraRAMDisk了,看看他出来的ISO是咋样的,若没问题的话,WINDOUS里就选他了,他是单文件的,也好管理.

回复

使用道具 举报

5294#
 楼主| 发表于 2020-12-9 22:31:31 | 只看该作者
kuer 发表于 2020-12-9 22:10
选全部驱动  可以驱动的 !那就说明 这个自定义驱动 并没多大意义!每次换windows版本构建  都得找出适合 ...

RS5的时候 rt的驱动是


netrtwlane.inf,netrtwlane_13.inf,netrtwlans.inf,netrtwlanu.inf

到了,后来Windows更新才新增了netrtwlane01.inf。

你只netrtwlane01.inf这种高版本才有的驱动文件,用17763自然没有驱动可用。

你可以写成这样试试:

  1. ;17763
  2. netrtwlane.inf,netrtwlane_13.inf,netrtwlans.inf,netrtwlanu.inf
  3. ;1909~
  4. netrtwlane01.inf
复制代码

回复

使用道具 举报

5295#
 楼主| 发表于 2020-12-9 22:44:29 | 只看该作者
狼人72105 发表于 2020-12-9 20:10
S大 这两天确实晕菜了 使用你的工具制作出来的PE 发现在安装QQ以后 微信始终安装不了。没有弹出安装窗口 ...

QQ需要勾选
    64位操作系统上支持运行32位应用程序

微信需要勾选
    64位操作系统上支持运行32位应用程序
    音频
    Internet Explorer

一起好像有点冲突。

先装WebChat,再装QQ。或者直接打开绿色版(安装后的Program Files(x86)下面的文件)。
回复

使用道具 举报

5296#
发表于 2020-12-9 22:48:59 | 只看该作者
微信

还得IE啊,这样的话,得琢磨一番了,我都去掉了IE了,以为后续都没软件支持他了,现在连网银都不支持IE了。微信这是反人类啊
回复

使用道具 举报

5297#
 楼主| 发表于 2020-12-9 23:01:38 | 只看该作者
550 发表于 2020-12-9 22:48
还得IE啊,这样的话,得琢磨一番了,我都去掉了IE了,以为后续都没软件支持他了,现在连网银都不支持IE了 ...

是需要一些勾选IE会补充系统dll,IE本身有没有无所谓。

我没有去挑选dll,按全功能,选项改变测试了下。勾选了IE和音频就可以用了。
回复

使用道具 举报

5298#
发表于 2020-12-9 23:26:50 | 只看该作者
本帖最后由 550 于 2020-12-9 23:35 编辑

终于整出来了个RMDISK,实测下来,完美通过。轮番各种操作都轮了一边,期间还16G物理内存用完了一次,大约在10分钟前,后续有轮番了3轮32、64,直到现在没发现故障,都不用重启RAM盘.ISO都能完美启动。
可以搜藏了
名称叫“虚拟光驱内存盘创建工具(UltraRAMDisk)1.65汉化专业版.exe”
还是个单文件实测时选的是逻辑盘快的那种盘,在WINDOWS磁盘管理器里找不到磁盘的那种。SCSI在磁盘管理器里是可以看见虚拟盘的



我自己搜藏好了 名称改了下 防止被疏忽了:wimbuilder2内存盘伴侣(UltraRAMDisk)1.65汉化专业版



回复

使用道具 举报

5299#
发表于 2020-12-9 23:41:04 | 只看该作者
大神,我想导入一个软件的注册表文件,main.bat要怎么写?

点评

reg import xxx.reg 就可以了。 不过reg中的路径,自己要进行替换。 Software => Tmp_Software  详情 回复 发表于 2020-12-10 22:49
回复

使用道具 举报

5300#
发表于 2020-12-10 01:41:23 | 只看该作者
slore 发表于 2020-12-9 22:31
RS5的时候 rt的驱动是

老大、 按照你这样写~ 各回各家 ~各找各妈!太好啦!
回复

使用道具 举报

5301#
发表于 2020-12-10 07:35:44 来自手机 | 只看该作者
slore 发表于 2020-12-9 22:44
QQ需要勾选
    64位操作系统上支持运行32位应用程序


嗯,嗯,排查了,文件都全,应该是注册表引起的冲突,等老大闲时,排查一下注册表。。

点评

嗯,试了好几个版本,确实有这样的问题,希望能解决,谢谢!  发表于 2020-12-10 09:55
回复

使用道具 举报

5302#
 楼主| 发表于 2020-12-10 22:49:07 | 只看该作者
xinwen2388 发表于 2020-12-9 23:41
大神,我想导入一个软件的注册表文件,main.bat要怎么写?

reg import xxx.reg 就可以了。

不过reg中的路径,自己要进行替换。
Software => Tmp_Software

  1. echo Mounted KEYs of %WB_BASE_PATH%'s HIVEs
  2. echo   - HKEY_LOCAL_MACHINE\Tmp_DEFAULT
  3. echo   - HKEY_LOCAL_MACHINE\Tmp_DRIVERS
  4. echo   - HKEY_LOCAL_MACHINE\Tmp_SOFTWARE
  5. echo   - HKEY_LOCAL_MACHINE\Tmp_SYSTEM
  6. echo.
复制代码

点评

S大,在你制作工具中,初级使用者板面中,构建栏,右侧注册表Drivces没有合并的选项,那它默认是才用了那个注册表呢?是Re?还是Re与install合并的?  详情 回复 发表于 2020-12-11 17:55
回复

使用道具 举报

5303#
发表于 2020-12-10 23:46:05 | 只看该作者
UltraRAMDisk的图,更难逮住,他的工况原来是正常的工况,没有错误提示。看来他的稳定是有保障的,这样可以放心了.


点评

构建(日志) 会保留下来。。。不过正常就好。Lite的免费版只能2Gb有点可惜。  发表于 2020-12-10 23:54
回复

使用道具 举报

5304#
发表于 2020-12-11 00:09:25 | 只看该作者
本帖最后由 550 于 2020-12-11 04:55 编辑

https://www.jb51.net/softs/697912.html

经核对不属于破解版 PRO版 单文件。把我测试的信息贴上来。我的16G内存,设置过11G以上

名称: wimbuilder2内存盘伴侣(UltraRAMDisk)1.65汉化专业版.exe
大小: 811520 字节 (792 KiB)
CRC32: A6E4503D
CRC64: DEE67308501B065C
SHA256: 3D6C845290828FA1DB40BAC2857EA2D0D7EB7B0A14EAF6E1CE81B9717DEED7FB
SHA1: 1306B00CAC20961808606E1F4CC7418B25FD5E17
BLAKE2sp: D78676EEF7195C91ACD92E09B57B1B043D3441235A28F8DE0B4CEC976A092001

内存盘主要设置,我是这样的。

用了2天了,体会到可以替换PE里的IMDISK,比IMDISK合适,反正都是手动的。但在WINOWS里,IMDISK由于可以做到无人管理式的充当缓存,还是IMDISK合适.但是构建工作,IMDISK由于自动卸载挂载的是个弱项,连续的循环几次就会出错,就不太适合了.


实测了下时间:WINDOWS改日期随机的到2033年,软件就不工作了;但是日期不变,启动PE,在PE里工作正常。PE每次启动都是新的,这个30的日期对PE就是无效的。这就成了PE的最佳搭档了


回复

使用道具 举报

5305#
发表于 2020-12-11 17:55:47 来自手机 | 只看该作者
slore 发表于 2020-12-10 22:49
reg import xxx.reg 就可以了。

不过reg中的路径,自己要进行替换。

S大,在你制作工具中,初级使用者板面中,构建栏,右侧注册表Drivces没有合并的选项,那它默认是才用了那个注册表呢?是Re?还是Re与install合并的?

点评

默认是合并install.wim的到winre吧。具体得看代码。专家和开发可以选择不合并。  详情 回复 发表于 2020-12-11 18:43
回复

使用道具 举报

5306#
 楼主| 发表于 2020-12-11 18:43:43 | 只看该作者
狼人72105 发表于 2020-12-11 17:55
S大,在你制作工具中,初级使用者板面中,构建栏,右侧注册表Drivces没有合并的选项,那它默认是才用了那 ...

默认是合并install.wim的到winre吧。具体得看代码。专家和开发者可以选择不合并。
回复

使用道具 举报

5307#
发表于 2020-12-11 19:20:05 | 只看该作者
本帖最后由 550 于 2020-12-11 19:24 编辑

下载了最新的12月3日发布的MSDN,
cn_windows_10_consumer_editions_version_20h2_updated_nov_2020_x64_dvd_07bf0300发布时间:2020-12-03

发现里面的install.wim,还是19041的,微软这是顽固不改进,这就意味着里面的DLL依旧错版了吗?


天翼云盘:https://cloud.189.cn/t/QVJvQbABzANv
访问码:bgx7
可以免客户端,全速下载.但需要注册一个用户

点评

本来winre.wim就是初版的就够维护。。。 微软没有打算要支持桌面环境。系统的功能更新与PE没关系。 外面显示是一方面,主要看里面实际文件的版本。基本上看winsxs带版本的就知道了。  详情 回复 发表于 2020-12-11 19:23
回复

使用道具 举报

5308#
 楼主| 发表于 2020-12-11 19:23:12 | 只看该作者
本帖最后由 slore 于 2020-12-11 19:26 编辑
550 发表于 2020-12-11 19:20
下载了最新的12月3日发布的MSDN,
cn_windows_10_consumer_editions_version_20h2_updated_nov_2020_x64_d ...

本来winre.wim就是初版的就够维护。。。
微软没有打算要支持桌面环境。系统的功能更新与PE没关系。

外面显示是一方面,主要看里面实际文件的版本。基本上看winsxs带版本的就知道了。
要是不正常,用uup的版本,不然就AddFileByList把系统文件全部从install.wim提取,当然注册表就用完整的SOFTWARE。
回复

使用道具 举报

5309#
发表于 2020-12-11 19:36:10 | 只看该作者
随机看了下winsxs文件夹下的其中一个DLL,果然是19041的版本,依旧属于20H1的系列;与19042无关呢

点评

哦,是Nov的版本,我上个月已经用ESD转ISO测试过了。 混在就混在吧,用install.wim的3个文件不变。  详情 回复 发表于 2020-12-11 19:44
回复

使用道具 举报

5310#
 楼主| 发表于 2020-12-11 19:44:23 | 只看该作者
550 发表于 2020-12-11 19:36
随机看了下winsxs文件夹下的其中一个DLL,果然是19041的版本,依旧属于20H1的系列;与19042无关呢

哦,是Nov的版本,我上个月已经用ESD转ISO测试过了。
混在就混在吧,用install.wim的3个文件不变。

点评

S大,能不能在如图这个界面重新布局一下呢?个人认为这样是不是更好一点呢?  详情 回复 发表于 2020-12-12 10:03
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-28 12:03

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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