无忧启动论坛

标题: Wim挂载驱动及挂载盘 [打印本页]

作者: hhh333    时间: 2023-3-13 11:32
标题: Wim挂载驱动及挂载盘
本帖最后由 hhh333 于 2023-3-13 12:32 编辑

一、关于新老wim挂载驱动的总结
1、Wim老驱动方式:使用wimfltr.sys+相应的老的wimgapi.dll
2、Wim新驱动方式:使用wimmount.sys+相应的新版wimgapi.dll
3、以上两个版本的sys驱动可以同时注册,通过选择相应的wimgapi.dll来决定采用什么驱动来挂载;
4、虽然都是挂载,实际上工作原理上有很大的不同,老的方式相当于建立快捷方式,新的方式相当于复制(当然,与复制有点小不同就是真正用到时才复制);显然复制天生就是可写的,但目标位置要足够大,挂载速度也较慢,初次运行由于要把数据复制过来因此也比较慢,但再次运行由于数据已经复制到内存子肯定是很快的;建快捷方式当然是很快的,而且目标位置只相当于二传一下基本不占内存,如果要实现可写,要指定一个写的位置,有写需求时程序会自动把写的内容转移到这个可写的位置。而且一般要可写,原来的wim文件要位于可写介质上,显然如果wim文件在光盘上是不可写的,但有一个办法可以实现可写,就是把wim封装到IMG文件中,因为IMG文件通常被认为是硬盘镜像,所以程序会错误地认为wim位于可写介质,因而只要指定的保存写入数据的位置可写就能实现写功能;
5、在NT5时代,一般在PE中用IMDISK来产生一个用来挂载的盘,如B:或Y:等,再将wim文件挂载到这个盘上;到NT6时代这种方式也是可行的;但是如果NT6中要使用老驱动就会出现一种奇怪的现象,就是譬如将APP.wim挂到由imdisk产生的B盘或Y盘APP目录实际上挂到了根目录,必须写成挂到B:\APP\APP;于是大家又找到一种办法,用VHD文件来产生虚拟内存的Y盘或B盘,这样就能够正常挂载;
6、以上用VHD来产生虚拟盘也解决了在NT6系统中使用老驱动不能双击挂载运行的问题;但这种方式也有缺点,一个就是产生盘的过程比较慢;还有一个就是如果系统使用了原生的fbwf,由于VHD文件位于PE的X盘,而这个又受到了FBWF的加持,VHD文件挂载了就卸不下来,当然用嵌入式fbwf的系统没有这个问题。但是嵌入式fbwf虽然写入速度较快,但要多占内存并且切到admin用户不能自动建立用户目录,还要使用最三方工具;
7、说回到新老驱动,以上可见是各有优缺点,一般的有关WIM应用的软件默认使用windows\system32中的wimgapi.dll,因此这个地方放什么版本的就使用什么版本的驱动。像DISM、DISM++这类的工具一般是使用的新驱动,用老驱动会异常,这样就要求系统目录中使用的是新版wimgapi.dll,但PE的外置工具还是想用老驱动,这样就提出一个需求,挂载程序可以自由选择DLL,从而决定使用老驱动还是新驱动,群里的RXPE做了一个mt工具可以实现这个需要,不知同时有两种方式挂载的时候会不会有问题,需要经过测试。在这个工具前,PECMD实际上也可以选择DLL来挂载,但好象共存时不正常,譬如新驱动挂Y:\WIM下,老驱动挂Y:\APP下;

二、关于挂载盘的一些测试
1、挂载盘可以选择本地硬盘,但由于PE要适应各种环境,选本地硬盘肯定不合适,因此此处只讨论虚拟盘;
2、上述已经说了,Imdisk/VHD都有一些不足,有不有更好的替代?能够象VHD一样正常挂载(包括双击自动运行),又能够象imdisk一样灵活设置;
3、测试了几个ramdisk工具:GiliSoftRAMDisk(简称为G驱动吧)、Primo Ramdisk(P驱动)、UltraRAMDisk(U驱动),还有几个由于不能满足基本的挂载要求直接PASS了
A、G驱动:WIM挂载正常,双击正常运行,但没有命令行工具,且必须用其管理工具才能出盘;
B、P驱动:WIM挂载正常,双击正常运行,有专门的命令行工具,卸载和出盘均可采用命令方式实现,但不能象IMDISK那样自由扩充容量且数据不丢失;
C、U驱动:WIM挂载正常,双击正常运行,无专门的命令行工具,出盘可以注册表实现,但卸载不方便,扩充容量也不便;
4、显然,还是P驱动比较方便的;一般而言,老驱动可以选用P驱动或U驱动,新驱动可以选用imdisk和P驱动。

以下是U驱动与P驱动在PE中实现的方法及文件: U_P_RAMDISKA.7z (1.29 MB, 下载次数: 217)



作者: wuxin9712    时间: 2023-3-13 12:30
佩服H大的钻研精神 学习了
作者: panyf14    时间: 2023-3-13 12:30
谢谢分享
作者: sairen139    时间: 2023-3-13 13:54
前几天感谢hhh333的帮助我实现了集成p驱动的pe,p驱动算是挂载wim最好的驱动了
作者: Sim683    时间: 2023-3-13 14:20
谢谢分享,学习一下
作者: hmaaaa    时间: 2023-3-13 14:38
讚,THX~!,感謝分享 ^^ 感恩喔~~!
作者: lx5815    时间: 2023-3-13 15:16
感谢分享
作者: yyz2191958    时间: 2023-3-13 15:54
学习了
作者: yyz2191958    时间: 2023-3-13 15:54

感谢分享
作者: 万人之上    时间: 2023-3-13 18:50
进来学习一下
作者: 旁观者清    时间: 2023-3-13 18:56
谢谢分享。
作者: 527104427    时间: 2023-3-13 20:44
M大不是早就解决 imdisk 挂到根目录的问题了吗,只要加 awe 参数就行啦
EXEC -hide ="C:\Windows\System32\imdisk.exe"  -a -s 52428800 -p "/fs:NTFS /q  /y /v:ImDisk" -o awe -o rw -m "Y:"
作者: hhh333    时间: 2023-3-13 20:55
527104427 发表于 2023-3-13 20:44
M大不是早就解决 imdisk 挂到根目录的问题了吗,只要加 awe 参数就行啦
EXEC -hide ="C:\Windows\System32 ...

我是用这个命令来挂载:RAMD ImDisk,L%YneedSize%,NTFS,%MountDrv%,ImDisk
用这个命令来扩展的:RAMD ImDisk* -e -s %&iAddSize%M -m %MountDrv%
能够加参数解决吗?
作者: hhh333    时间: 2023-3-13 21:26
本帖最后由 hhh333 于 2023-3-13 21:28 编辑
527104427 发表于 2023-3-13 20:44
M大不是早就解决 imdisk 挂到根目录的问题了吗,只要加 awe 参数就行啦
EXEC -hide ="C:\Windows\System32 ...

什么时候解决的啊,吓我一跳。查阅了我的脚本确实有这个命令但是挂起的:imdisk -a -o awe -s 15M -m Y: -p "/fs:%YFAT% /q /y /v:ImDisk",刚才试了不行。不下挂一层就到根下了
作者: 527104427    时间: 2023-3-13 21:56
hhh333 发表于 2023-3-13 21:26
什么时候解决的啊,吓我一跳。查阅了我的脚本确实有这个命令但是挂起的:imdisk -a -o awe -s 15M -m Y:  ...

很久以前M大说的,在帖子里翻不到了。AWEAlloc 要正常才行。我也没去测试,应该是权威的吧。
作者: hhh333    时间: 2023-3-13 22:51
527104427 发表于 2023-3-13 21:56
很久以前M大说的,在帖子里翻不到了。AWEAlloc 要正常才行。我也没去测试,应该是权威的吧。

awealloc我再看下
作者: hhh333    时间: 2023-3-13 23:12
527104427 发表于 2023-3-13 21:56
很久以前M大说的,在帖子里翻不到了。AWEAlloc 要正常才行。我也没去测试,应该是权威的吧。

net start awealloc显示正常,似乎也没用
作者: hhh333    时间: 2023-3-15 18:17
本帖最后由 hhh333 于 2023-3-15 18:27 编辑
527104427 发表于 2023-3-13 21:56
很久以前M大说的,在帖子里翻不到了。AWEAlloc 要正常才行。我也没去测试,应该是权威的吧。

imdisk也似乎很久没更新了,没有更新的版本了吧
刚才看了下,好像还有更新:http://www.ltr-data.se/opencode.html/#ImDisk

作者: 2012qnmd    时间: 2023-3-15 19:33
wim挂载,我到是不用,嫌麻烦

imdisk经常用,但是不用内置的,直接最新版

rundll32 setupapi.dll,InstallHinfSection DefaultInstall 128 .\imdisk.inf

net start awealloc
net start imdisk
imdisk -a -s 512m -o awe -m z: -p "/fs:ntfs /v:RamDisk /q /y"
swapadd z:\pagefile.sys 32M 128M

imdisk -e -s 256m -m z:

awe使用物理内存,而不是虚拟内存,创建内存盘

作者: a511026    时间: 2023-3-15 19:47
佩服H大的钻研精神 学习了
作者: 527104427    时间: 2023-3-15 23:34
hhh333 发表于 2023-3-15 18:17
imdisk也似乎很久没更新了,没有更新的版本了吧
刚才看了下,好像还有更新:http://www.ltr-data.se/ope ...

有的,这货经常更新的,汉化速度都跟不上
作者: hhh333    时间: 2023-3-16 11:02
527104427 发表于 2023-3-15 23:34
有的,这货经常更新的,汉化速度都跟不上

我用新版安装了一下,好像问题依旧
作者: hhh333    时间: 2023-3-16 11:03
2012qnmd 发表于 2023-3-15 19:33
wim挂载,我到是不用,嫌麻烦

imdisk经常用,但是不用内置的,直接最新版

新版又多了个驱动不知干啥的
作者: chiannet    时间: 2023-3-17 07:56
hhh333 发表于 2023-3-16 11:02
我用新版安装了一下,好像问题依旧

把装p驱改动过的几处注册表还原为原始呢?
作者: fegr    时间: 2023-3-17 15:14
谢谢分享
作者: wytbbs    时间: 2023-5-18 15:42
有时候在pe下编辑vim经常用到,多谢。
作者: 2010linlance    时间: 2023-5-19 01:08
没太懂,你们不用imagex么?可以apply WIM,很好用啊。
作者: hhh333    时间: 2023-5-19 09:12
2010linlance 发表于 2023-5-19 01:08
没太懂,你们不用imagex么?可以apply WIM,很好用啊。

与使用什么工具挂载关系不大
作者: 趣味科技    时间: 2023-6-9 11:07
谢谢分享
作者: dododo    时间: 2023-6-9 11:35

作者: JayeDieyan    时间: 2023-6-9 14:17
p驱集成容易导致原来的摄像头什么的服务异常,试了几次后采用开机实装比较稳妥,不会影响系统服务
作者: 创新科技2015    时间: 2023-7-1 09:54

佩服H大的钻研精神 学习了
作者: hktk2020    时间: 2023-9-15 22:44
感谢H3大师分享 学习了
作者: huang1987    时间: 2023-11-22 19:31
谢谢分享
作者: 创新科技2015    时间: 2023-11-24 13:11

谢谢分享
作者: nowayer    时间: 2023-12-14 11:04
提示: 作者被禁止或删除 内容自动屏蔽
作者: yyz2191958    时间: 2023-12-14 11:24
        赞一个
作者: wang1126    时间: 2024-2-14 19:25
谢谢分享
作者: 网络如风    时间: 2024-7-18 22:24
佩服H大的钻研精神




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