无忧启动论坛

标题: liujun2000 和 879792799,两位请进【浏览器用wimboot方式打包释放到实盘目录】的问题 [打印本页]

作者: shinykers    时间: 2024-2-18 22:54
标题: liujun2000 和 879792799,两位请进【浏览器用wimboot方式打包释放到实盘目录】的问题
本帖最后由 shinykers 于 2024-2-19 19:42 编辑

liujun2000879792799,两位好,今天写了两个批处理想验证notepad3绿软打包成wim后释放到实盘目录但我遇到了一些问题,现向两位求助。

打包.bat
---正文---
pushd %~dp0
wimlib-imagex capture %1 %~n1.wim --wimboot --compress=lzx:100 --check
pause
---

解包.bat
---正文---
wimlib-imagex apply %1 1 %~n1 --wimboot
pause
---

以下为报错内容:

Microsoft Windows [版本 10.0.18363.2274]
(c) 2019 Microsoft Corporation。保留所有权利。

D:\wimboot\tools\wimlib-1.14.3-windows-i686-bin>解包.bat Notepad3.wim
当前运行路径是:D:\wimboot\tools\wimlib-1.14.3-windows-i686-bin
已获取管理员权限
[WARNING] \Windows\System32\WimBootCompress.ini does not exist in the WIM image.
          The default configuration will be used instead; it assumes that all
          files are valid for external backing regardless of path, equivalent
          to an empty [PrepopulateList] section.
Applying image 1 ("Notepad3") from "D:\wimboot\tools\wimlib-1.14.3-windows-i686-bin\Notepad3.wim" to directory "Notepad3"
[WARNING] FSCTL_SET_EXTERNAL_BACKING failed (err=87); data was 48 bytes:
010000000100000001000000000000001800000000000000c52e91469b0e8f1f8dfa3b5a068d48378398b35100000000
[WARNING] Retrying after 100ms...
[WARNING] FSCTL_SET_EXTERNAL_BACKING failed (err=87); data was 48 bytes:
010000000100000001000000000000001800000000000000c52e91469b0e8f1f8dfa3b5a068d48378398b35100000000
[WARNING] Retrying after 100ms...
[WARNING] FSCTL_SET_EXTERNAL_BACKING failed (err=87); data was 48 bytes:
010000000100000001000000000000001800000000000000c52e91469b0e8f1f8dfa3b5a068d48378398b35100000000
[WARNING] Retrying after 100ms...
[WARNING] FSCTL_SET_EXTERNAL_BACKING failed (err=87); data was 48 bytes:
010000000100000001000000000000001800000000000000c52e91469b0e8f1f8dfa3b5a068d48378398b35100000000
[WARNING] Too many retries; returning failure
[ERROR] "Notepad3\Docs\Changes.txt": Couldn't set WIMBoot pointer data (err=87):
ERROR: Exiting with error code 75:
       Failed to set WIMBoot pointer data.
请按任意键继续. . .


作者: shinykers    时间: 2024-2-18 23:57
是不是因为我的系统运行在wimboot下呢?这个有没的关系啊?

作者: nathan6498    时间: 2024-2-19 00:07
学习学习
作者: jinyutang    时间: 2024-2-19 08:49
学习学习
作者: tanglf    时间: 2024-2-19 09:49
看看方案
作者: nathan6498    时间: 2024-2-19 16:29
学习学习
作者: captain_g    时间: 2024-2-19 19:15
没大看得懂楼主要干嘛;
wimlib-imagex 打包 wim 或 释放 wim 均需要操作对象支持;
打包的对象或释放的wim中,最起码应有\Windows\System32\WimBootCompress.ini这个文件;
缺少的话,打包时不提示出错,但释放时肯定出错;
此外,打包或释放时,要使用--wimboot,就不应该再使用其他.ini配置文件;
释放前可用wimlib-imagex.exe info查看一下wim是否兼容wimboot;
重点:wimboot一般只适用于Win7~Win8.1操作系统映像,原生Win7并不支持;


作者: shinykers    时间: 2024-2-19 19:25
本帖最后由 shinykers 于 2024-2-19 19:37 编辑
captain_g 发表于 2024-2-19 19:15
没大看得懂楼主要干嘛;
wimlib-imagex 打包 wim 或 释放 wim 均需要操作对象支持;
打包的对象或释放的w ...

谢谢经验分享的兄弟,待会我试试哈,我现在用的是win10,不过系统也是wimboot启动的ramos。
经过检查:
Available Images:
-----------------
Index:                  1
Name:                   -
Description:            .wim
Directory Count:        31
File Count:             97
Total Bytes:            23642816
Hard Link Bytes:        0
Creation Time:          Mon Feb 19 11:35:35 2024 UTC
Last Modification Time: Mon Feb 19 11:35:35 2024 UTC
WIMBoot compatible:     yes


作者: 都市浪子666    时间: 2024-2-19 19:36
本帖最后由 都市浪子666 于 2024-2-19 19:39 编辑
shinykers 发表于 2024-2-18 23:57
是不是因为我的系统运行在wimboot下呢?这个有没的关系啊?

跟这没关系,我的系统也是wimboot模式的

打包的时候,参数加上    --wimboot                       (--compress=maximum 这个参数也可以用一用)


我都是把很多软件打包成WIM。。然释放指定到指定目录,并运行指定文件(有点像自解压的味道了)





作者: shinykers    时间: 2024-2-19 19:38
都市浪子666 发表于 2024-2-19 19:36
跟这没关系,我的系统也是wimboot模式的

看命令是没啥问题。我都是把很多软件打包成WIM。。然释放指定 ...

英雄所见略同。
我也想这样做啊~
作者: 都市浪子666    时间: 2024-2-19 19:55
shinykers 发表于 2024-2-19 19:38
英雄所见略同。
我也想这样做啊~

我发个成品上来吧 打包&释放WIM(预留自运行接口).zip (464.44 KB, 下载次数: 16)





作者: shinykers    时间: 2024-2-19 21:09
都市浪子666 发表于 2024-2-19 19:55
我发个成品上来吧

感谢分享~
作者: captain_g    时间: 2024-2-20 08:44
应该是猜到楼主的用法了;

用wimlib-imagex,带--wimboot参数,打包某个绿色应用所在的目录,生成wim;

然后用wimlib-imagex,带--wimboot参数,释放预制好的wim到某个磁盘目录,通过释放出的指针文件,使用封包在wim中的应用;

(前提是当前宿主Win系统应该是支持WimBoot的,即带相应的驱动,能从释放出的指针文件顺利读取封包在wim中的实体文件)

楼主应该这样尝试:

仿WimBootCompress.ini预制一个打包配置文件,包括下面几项,决定哪些文件要生成指针,等等:

[CompressionExclusionList]

[PrepopulateList]

[ExclusionList]

[CompressionFolderList]

打包时调用它,示例:

wimlib-imagex.exe capture "x" "y.wim" --compress=LZX --config="xyz.ini" --wimboot "123" "456"

wimlib-imagex.exe打包wim时,会自动在wim内部生成一个\Windows\System32\WimBootCompress.ini,其内容与打包时调用的一致;

这样即可以使用wimlib-imagex.exe以--wimboot从wim释放需要的指针文件了;
作者: 879792799    时间: 2024-2-20 10:05
你是老师,  我是菜鸟 ,这个我完全不懂命令
楼上是大佬 哈哈





欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3