无忧启动论坛

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

wim挂载的怪事

[复制链接]
跳转到指定楼层
1#
发表于 2017-9-4 12:05:18 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 dos时代菜鸟 于 2017-9-4 22:38 编辑

部分真相,在 7 楼,只能是说是部分真相吧, 有的是猜测的.
6.0 和 6.1 两个版本的  x86/x64  imagex 在 各自的 w,aik 中 可以找到,与之对应 的 驱动程序,软件都不一样. 7 楼有 两个版本 的压缩包.


感谢 frg521  糊涂 的回复.

关于 wim 只读挂载的怪事情
软件环境 :
win8pe_x64
wimfltr 6.0.6001.1800
wimmount.sys,wimfsf.sys,wimgapi.dll,wimserv.exe,dism,exe 6.2.9200.16384
\windows\system32\image.exe 6.2.9200
\windows\SysWow64\image.exe 6.0.6001

pecmd.exe 为论坛最新的 2017 版,因为发现 2014 版 的 %AllDrv% 变量不可用。

win8pe启动时 搜索 \boot\pe\pesoft_x64.wim
自建立 128M 动态vhd 格式化成 ntfs 分配 Y: 盘符,将 pesoft_x64.wim 挂载到 y:\pesoft_x64上
因为 外置程序都是些不需要可写 运行的,所以 为了节省空间,以只读方式挂载。


但是, 结果却 不像是 只读的。
在 cmd 下 用 dism 或者 imagex 6.2 版本都能顺利实现 只读挂载,但 当 通过 pecmd main 调用 ini 的方式 挂载的时候,却 不是只读的,
用 image_x86 6.0 版本倒是没问题。


下面用图说话:
一、
image x64 6.2 挂载情况,wimtool 用到本文件夹下的 wigapi.dll 6.0 版+wimfltr 6.0,不能探测到 wim 的挂载,y盘占用明显不像 只读。wintool 用当前 6.2 版本的 wimmount.sys /wimgapi.dll 等 也看不到wim 的挂载。





二、
用 \windows\SysWow64\image.exe 6.0 挂载,明显可以看到是 用到了 同版本已经生效的 wimfltr.sys 并且是 只读挂载的




三、不论 一 、二 的哪种情况 都 不能通过 wimtool 用 6.2 版的 wimmount.sys 等 驱动和程序 探测到 wim 的挂载。


尝试 把 wimfltr.sys 去掉,用 imagex 6.2 在 pecmd main 中调用,仍然 无法实现只读效果. 而在 cmd 下 是 可以的.



2#
 楼主| 发表于 2017-9-4 12:08:56 | 只看该作者
本帖最后由 dos时代菜鸟 于 2017-9-4 13:57 编辑

是不是 imagex 6.2 只读挂载 也占用 wim 同体积硬盘空间呢?
如此 就不如用 6.0 了。

经测试 在 cmd 下 通过 imagex 6.2 只读挂载 ,是成功的,挂载后,y:盘可用 空间 仍然很多.
回复

使用道具 举报

3#
 楼主| 发表于 2017-9-4 17:33:46 | 只看该作者
frg521 发表于 2017-9-4 16:53
6.0在64位可写卸载蓝屏。如果不写就32与64全改6.0版本。选择权在于dll

需要 哪些 dll ? 不会跟 dism 冲突么?
没找到  x64 的 imagex 6.0
也没找到 高版本 的 6.2  的 x86/x64 的 wimfltr.sys
回复

使用道具 举报

4#
发表于 2017-9-4 19:19:52 | 只看该作者
没找到  x64 的 imagex 6.0

这个行不行
imagex.rar (189.63 KB, 下载次数: 10)

点评

多谢 大神 提供 我已经找分别从 6.1 和 6.0 的 w.aik 中找到了 答案. 两个版本 的 imagex 不一样. 6.0 的 是 基于 wimfltr.sys 发挥作用, 关于 wimfltr.sys 的优势和好处 论坛有帖子. 经测试 6.0 的 x64  详情 回复 发表于 2017-9-4 22:13
回复

使用道具 举报

5#
 楼主| 发表于 2017-9-4 22:13:21 | 只看该作者
本帖最后由 dos时代菜鸟 于 2017-9-4 22:19 编辑

多谢 大神 提供

我已经找分别从 6.1 和 6.0 的 w.aik 中找到了 答案.
imagex.6.1.7600.zip (2.53 MB, 下载次数: 25)
imagex.6.0.6001.zip (2 MB, 下载次数: 28)
两个版本 的 imagex 不一样.

6.0 的 是 基于  wimfltr.sys 发挥作用, 关于 wimfltr.sys 的优势和好处 论坛有帖子.
经测试 6.0 的 x64 版 image 也能 配合 x64版的 wimfltr.sys 实现 在 pecmd main 调用 ini 的方式下 只读挂载.

6.1 的 是基于 wimmount.sys 和wimserv.exe 来实现功能 , 微软 从 6.1 开始 就不出 wimfltr.sys 驱动了.显然这个 6.1版的 imagex 性能速度上更强, 但,我只是猜测,在 涉及权限上,恐怕 就要逊于 6.0 原始基于 驱动服务的版本了.而且 wimfltr.sys 叫做微型接口.

再说说  wimtool ,本身应该是 x86 程序, 他的毛病 在于即使把 x64的 wimgapi.dll放到其同目录下,他一样无视存在,他只找 x86 的 wimgapi.dll ,并首先考虑同目录下的 wimgapi.dll_x86 与系统已经装载的 wimfltr.sys(x86/x64) 的 n.x 字样的 版本匹配,而不考虑wimfltr.sys 的x86或x64,其次才是 明确 系统中 6.1以上 系列的驱动和服务文件等的版本.

点评

我没有研究过这些, 只知道在实际应用中,6.1打包速度够快,但不支持NT5的WIM打包后启动(也可能有大神可以搞定); 6.0速度虽然一般,貌似各平台兼容效果还可以,最主要是03PE的WIM打包后正常启动 其他更深的  详情 回复 发表于 2017-9-5 08:28
回复

使用道具 举报

6#
 楼主| 发表于 2017-9-4 22:27:52 | 只看该作者
frg521 发表于 2017-9-4 17:49
wim驱动只用一个dll,6.0就是wimfltr没有其他版本,任何调用驱动的都是看自身目录与系统目录的dll决定用哪 ...

多谢指点,
回复

使用道具 举报

7#
发表于 2017-9-4 22:45:49 | 只看该作者
wimfltr.sys和wimmount.sys你把他们俩理解为完全不相干的两个东西就行了。

点评

这回明白了, 就是让 那个 imagex 给绕矇,既然 机理 不一样的 程序,就别用同一个 程序名啊。虽然用法 相同。 微软 ,咋想的呢?  详情 回复 发表于 2017-9-5 07:43
回复

使用道具 举报

8#
 楼主| 发表于 2017-9-5 07:43:45 | 只看该作者
红毛樱木 发表于 2017-9-4 22:45
wimfltr.sys和wimmount.sys你把他们俩理解为完全不相干的两个东西就行了。

这回明白了,
就是让 那个 imagex 给绕矇,既然 机理 不一样的 程序,就别用同一个 程序名啊。虽然用法 相同。
微软 ,咋想的呢?
回复

使用道具 举报

9#
发表于 2017-9-5 08:28:28 | 只看该作者
dos时代菜鸟 发表于 2017-9-4 22:13
多谢 大神 提供

我已经找分别从 6.1 和 6.0 的 w.aik 中找到了 答案.

我没有研究过这些,
只知道在实际应用中,6.1打包速度够快,但不支持NT5的WIM打包后启动(也可能有大神可以搞定);
6.0速度虽然一般,貌似各平台兼容效果还可以,最主要是03PE的WIM打包后正常启动

其他更深的东东就是大神们研究的了,
也可能我理解的不对,
反正不影响我使用就行,
我安心做一个糊涂的伸手党
回复

使用道具 举报

10#
发表于 2017-9-5 17:53:36 | 只看该作者
估计是时机问题。windows很多地方很在乎在这个。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-17 21:50

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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