无忧启动论坛

标题: 如何在WIN7PE中添加IMDISK支持 [打印本页]

作者: msxjc    时间: 2011-4-13 16:14
标题: 如何在WIN7PE中添加IMDISK支持
请问如何在WIN7PE中添加IMDISK支持?即:使用PECMD RAMD的命令能多出一个虚拟盘来?
作者: yjstone    时间: 2011-4-13 18:03
打开Win7PE的WIM镜像;
将Win7PE系统目录里的system32\config\system注册表配置文件挂载为SYS,然后导入如下注册表:
  1. Windows Registry Editor Version 5.00

  2. [HKEY_LOCAL_MACHINE\sys\ControlSet001\services\ImDisk]
  3. "Type"=dword:00000001
  4. "Start"=dword:00000001
  5. "ErrorControl"=dword:00000000
  6. "ImagePath"="system32\\DRIVERS\\imdisk.sys"
  7. "DisplayName"="ImDisk Virtual Disk Driver"
  8. "Description"="Disk emulation driver"

  9. [HKEY_LOCAL_MACHINE\sys\ControlSet001\services\ImDisk\Enum]
  10. "0"="Root\\LEGACY_IMDISK\\0000"
  11. "Count"=dword:00000001
  12. "NextInstance"=dword:00000001
  13. [HKEY_LOCAL_MACHINE\sys\ControlSet001\Enum\Root\LEGACY_IMDISK]
  14. "NextInstance"=dword:00000001

  15. [HKEY_LOCAL_MACHINE\sys\ControlSet001\Enum\Root\LEGACY_IMDISK\0000]
  16. "Service"="ImDisk"
  17. "Legacy"=dword:00000001
  18. "ConfigFlags"=dword:00000000
  19. "Class"="LegacyDriver"
  20. "ClassGUID"="{8ECC055D-047F-11D1-A537-0000F8753ED1}"
  21. "DeviceDesc"="ImDisk Virtual Disk Driver"

  22. [HKEY_LOCAL_MACHINE\sys\ControlSet001\Enum\Root\LEGACY_IMDISK\0000\Control]
  23. "*NewlyCreated*"=dword:00000000
  24. "ActiveService"="ImDisk"
复制代码
然后卸载system注册表配置文件
之后再将imdisk.sys驱动文件放到Win7PE的system32\drivers目录,imdisk.exe放在system32目录。
保存修改后的WIM镜像就可以了。
要虚拟内存盘还需在PECMD的配置文件用 RAMD命令或调用批处理来生成。

[ 本帖最后由 yjstone 于 2011-4-13 20:18 编辑 ]
作者: msxjc    时间: 2011-4-24 09:24
再请问,如何让WIN7PE,启动时能自动创建Y盘?除了要导入注册表以外,内核分别需要哪些文件?
作者: HB天意    时间: 2011-4-24 10:23
在pecmd.ini
中加一句:RAMD ImDisk,L64,NTFS,Y:,PETOOLS
作者: msxjc    时间: 2011-4-24 11:09
用这条语句,貌似只能创建最大255M的虚拟盘。根本不够用啊。
作者: HB天意    时间: 2011-4-24 11:19
右键关联了imdisk命令后你就是挂载几个G的文件也没有问题。
作者: lxl1638    时间: 2011-4-24 11:43
在32位系统中,PECMD的RAMD命令限定的最大值不能超过2G,64位系统的这个最大值还没有修改,到正式版时会修改一下,准备设置为8G。
问题是他的机子有多大的内存,且PECMD的RAMD、FBWF两条命令还限制其最大值不能超过可用内存的50%,如果是1G内存的机子,启动后
可用内存可能就在512MB左右,这样RAMD命令设置出的最大值就是256M左右了。

虚拟盘是使用内存的,没有足够的内存不可能设置出足够大的虚拟盘。
作者: msxjc    时间: 2011-4-24 13:26
原帖由 lxl1638 于 2011-4-24 11:43 发表
在32位系统中,PECMD的RAMD命令限定的最大值不能超过2G,64位系统的这个最大值还没有修改,到正式版时会修改一下,准备设置为8G。
问题是他的机子有多大的内存,且PECMD的RAMD、FBWF两条命令还限制其最大值不能 ...



我昨天试了一下,虚拟出255M的盘以后,挂载的WIM包超过它的大小。就不正常了。虽然有可能挂载成功,但文件都不能正常访问。
还有,各位大大们,WIN7PE下,挂载WIM包吃掉一级目录是怎么回事?虽然说这个问题可以通过 在WIM包中多创建一级目录来解决。但又出现另一个问题。当第一个WIM包被正确挂载以后,这个虚拟盘,就不能再挂载任何别的WIM包了,显示“拒绝访问”。这又是怎么回事?

还有,使用以下注册表
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\aaa\ControlSet001\Services\Ramdriv]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"DisplayName"="Ramdisk"
"ImagePath"="system32\\drivers\\ramdriv.sys"

[HKEY_LOCAL_MACHINE\aaa\ControlSet001\Services\Ramdriv\Enum]
"Count"=dword:00000001
"NextInstance"=dword:00000001
"0"="Root\\UNKNOWN\\9999"

[HKEY_LOCAL_MACHINE\aaa\ControlSet001\Services\Ramdriv\Parameters]
"BreakOnEntry"=dword:00000000
"DebugLevel"=dword:00000005
"DebugComp"=dword:ffffffff
"DiskSize"=dword:00100000
"DriveLetter"="Y:"
"RootDirEntries"=dword:00000200
"SectorsPerCluster"=dword:00000002

能在启动时自动创建一个虚拟盘,这个虚拟盘,好像没有容量的限制啊。至少我以前在PE1下面使用是这样的。不知道在WIN7PE下,如何使用它在启动时自动创建一个虚拟盘?
我把以上内容导入到WIN7的PE下面,启动时没有自动创建虚拟盘,还望各位大大们指教啊。

[ 本帖最后由 msxjc 于 2011-4-24 13:38 编辑 ]
作者: 527104427    时间: 2011-4-26 16:20
原帖由 msxjc 于 2011-4-24 13:26 发表



我昨天试了一下,虚拟出255M的盘以后,挂载的WIM包超过它的大小。就不正常了。虽然有可能挂载成功,但文件都不能正常访问。
还有,各位大大们,WIN7PE下,挂载WIM包吃掉一级目录是怎么回事?虽然说这个问 ...




给PE添加B盘(RAMDRIV)PE3.0.rar (181.27 KB, 下载次数: 454)
作者: msxjc    时间: 2011-4-26 17:18
原帖由 2010527104427 于 2011-4-26 16:20 发表




119432



请问,您给的压缩包中的REG文件,如何使用?在PE启动时导入?
作者: 527104427    时间: 2011-4-26 17:51
原帖由 msxjc 于 2011-4-26 17:18 发表



请问,您给的压缩包中的REG文件,如何使用?在PE启动时导入?



将PE的注册表文件“SYSTEM”挂到系统注册表,双击导入注册表文件,然后卸载即可
作者: wyb391    时间: 2011-4-26 17:55
原帖由 msxjc 于 2011-4-24 11:09 发表
用这条语句,貌似只能创建最大255M的虚拟盘。根本不够用啊。



在WIN7PE 下挂载 WIM很费内存的    。  还有很多的问题没有解决,。
作者: kcyou    时间: 2012-5-29 23:21
标题: 回复 #9 527104427 的帖子
此法在WIN7PE中可以吗?




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