无忧启动论坛

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

关于在PE下用isocmd虚拟光驱的问题??已解决

[复制链接]
跳转到指定楼层
1#
发表于 2008-11-7 13:26:36 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
所用PE为二级内核is_+isz结构(usbzip\东邪\完美者V6 )。先调用一级内核is_,再用isocmd -mount z: 调用二级内核isz,这三个版本pe都可以,要想多一个虚拟光驱光驱盘,只要用附件isodrive.zip里的文件
替换一级内核文件即可,文件位置wxpe\system32\isocmd.exe ; wxpe\system32\drivers\isodrive.sy_ ,
除了Z盘挂载了二级内核isz文件外,还有一个虚拟光盘Y:,x盘为PE系统盘。如Ramdisk盘为Y:盘,则要修改一级内核里的setupreg.hiv文件,用注册表编辑器加载配置单元,查找Y:,修改为如W:,卸载配置单元,用XCAB压缩并改名为setupreg.hi_替换内核内原文件,再修改winnt.exe配置文件,如:
echo 安装注册wimnt.exe
".\wimnt.exe" /reg /mp w:\ /tp %temp%  /setup
PECMD.EXE LINK %Programs%\文件工具\WIMNT,%cd%\wimnt.exe

这样就完成了修改,其它如天琴星911里则不需要这样,只要在ultraiso软件里加一个drivers目录,里面放上isocmd.exe和isodrive.sys文件(原版即可,不需要上面提到的是特制的)。
cmd文件如下:
@echo off
PUSHD %~dp0
SET CurDir=%CD%
PATH "%WINDIR%\SYSTEM32"
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%"
REG ADD HKCR\UltraISO\DefaultIcon /ve /t REG_SZ /d "%CurDir%\UltraISO.EXE,0" /f>NUL
REG ADD HKCR\UltraISO\shell\open\command /ve /t REG_SZ /d "\"%CurDir%\UltraISO.EXE\" "\"%%1\" /f>NUL
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /v DefViewer /t REG_SZ /d "%SystemRoot%\system32\NOTEPAD.EXE" /f>NUL
ftype UltraISO="%CurDir%\ultraiso.exe" "%%1"
assoc .iso=UltraISO
assoc .bin=UltraISO
assoc .isz=UltraISO
assoc .cue=UltraISO
assoc .mds=UltraISO
assoc .mdf=UltraISO
assoc .nrg=UltraISO
assoc .img=UltraISO
assoc .ima=UltraISO                       (关联文件类型,其它可以自己加)
regsvr32 /s "%CurDir%\isoshell.dll"   (关联右键加载光驱镜像文件)
cd drivers                (上面提到的三款pe不需要红色部份)
isocmd -number 3   (如只要一个就不需要这句)
isocmd -i
cd..
SET Programs=%USERPROFILE%\「开始」菜单\程序
PECMD.EXE LINK %Programs%\光盘及解压工具\光盘映像工具 UltraISO 9.30,%CurDir%\ULTRAISO.exe
PECMD.EXE exec =%CurDir%\ULTRAISO.exe
EXIT /B


见附件:

[ 本帖最后由 xiao75918 于 2008-11-10 11:53 编辑 ]

isodrive.zip

41.13 KB, 下载次数: 273, 下载积分: 无忧币 -2

martinx同志特制isocmd.exe和isodrive.sy_

ULTRAISO9.3.part1.rar

292.97 KB, 下载次数: 288, 下载积分: 无忧币 -2

含drivers的wim文件

ULTRAISO9.3.part2.rar

292.97 KB, 下载次数: 162, 下载积分: 无忧币 -2

ULTRAISO9.3.part3.rar

292.97 KB, 下载次数: 172, 下载积分: 无忧币 -2

ULTRAISO9.3.part4.rar

176.39 KB, 下载次数: 210, 下载积分: 无忧币 -2

43#
发表于 2008-12-16 17:49:19 | 只看该作者
原帖由 yidawpf 于 2008-12-16 14:07 发表

用for命令啊。

终于完全搞定了,谢谢!
回复

使用道具 举报

42#
发表于 2008-12-16 14:07:56 | 只看该作者
原帖由 husiqin 于 2008-12-16 13:29 发表

问个白痴问题,你的启动维护工具集.exe自动找各盘的根目录下WXPE\TYPE.isz并自动加载是怎样实现的,我不太会这个。

用for命令啊。
回复

使用道具 举报

41#
发表于 2008-12-16 13:29:33 | 只看该作者
原帖由 yidawpf 于 2008-12-16 12:27 发表

你的方法太麻烦。你可以把我的哪个exe用rar打开看下。非常简单的。

问个白痴问题,你的启动维护工具集.exe自动找各盘的根目录下WXPE\TYPE.isz并自动加载是怎样实现的,我不太会这个。
回复

使用道具 举报

40#
发表于 2008-12-16 13:21:03 | 只看该作者
奇怪的是PE下是全中文的效果。
回复

使用道具 举报

39#
发表于 2008-12-16 13:14:44 | 只看该作者
但你的那个文件解压后中还有个启动维护工具集.exe,还是不知道怎样加载自己想要的ISO文件。呵呵。
@echo off
PUSHD %~dp0
SET CurDir=%CD%
PATH "%WINDIR%\SYSTEM32"
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%"
REG ADD HKCR\UltraISO\DefaultIcon /ve /t REG_SZ /d "%CurDir%\UltraISO.EXE,0" /f>NUL
REG ADD HKCR\UltraISO\shell\open\command /ve /t REG_SZ /d "\"%CurDir%\UltraISO.EXE\" "\"%%1\" /f>NUL
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /v DefViewer /t REG_SZ /d "%SystemRoot%\system32\NOTEPAD.EXE" /f>NUL
ftype UltraISO="%CurDir%\ultraiso.exe" "%%1"
assoc .iso=UltraISO
assoc .bin=UltraISO
assoc .isz=UltraISO
assoc .cue=UltraISO
assoc .mds=UltraISO
assoc .mdf=UltraISO
assoc .nrg=UltraISO
assoc .img=UltraISO
assoc .ima=UltraISO
:x86
echo  x86 platform
sc create ISODrive binPath= "%cd%\ISODrive.sys" type= kernel start= auto error= ignore
goto :OK

:OK
echo.
sc start ISODrive
echo.
echo 服务正在运行,不要关闭窗口。
echo.
echo 设置驱动器数量
isocmd -number 1
echo.
echo 设置驱动器卷标
isocmd -change 1 V:
echo.
echo 加载ISO镜像
regsvr32 /s "%cd%\isoshell.dll"
@echo off
for %%a in (c d e f h i j k l m n o p q r s t u v w x y z) do (
if exist %%a:\软件\TOOL.iso (isocmd -mount V:  %%a:\软件\TOOL.iso
goto :mount )
)
%cd%\ultraiso.exe -infrom -mount 0
goto :mount

:mount
echo.
echo ISO已加载,请到我的电脑中查看。按任意键将卸载ISO。
pause

echo.
echo 卸载ISO镜像
isocmd -eject V:
echo.
echo 当按任意键时,服务将被删除。

goto :QUIT

:QUIT
regsvr32 /u /s "%cd%\isoshell.dll"
sc stop ISODrive
sc Delete ISODrive

@echo off
Reg delete "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0"  /va /f
Reg delete HKCR\UltraISO\DefaultIcon  /va /f
Reg delete HKCR\UltraISO\shell\open\command   /va /f
assoc .iso=
assoc .bin=
assoc .isz=
assoc .cue=
assoc .mds=
assoc .mdf=
assoc .nrg=
assoc .img=
assoc .ima=



上面是我的cmd,都凑出来的,见笑了。
需要uikey.ini、ISODrive.sys、IsoCmd.exe、sc.exe、ULTRAISO.EXE、isoshell.dll、文件夹lang在同一个目录。
都是原版没改过的。XP、PE下都能正常运行。并选择加载ISO,如不选择则自动加载同盘下的\软件\TOOL.iso

[ 本帖最后由 husiqin 于 2008-12-16 17:47 编辑 ]

1.jpg (16.26 KB, 下载次数: 60)

效果图1

效果图1

2.jpg (17.88 KB, 下载次数: 55)

效果图2

效果图2
回复

使用道具 举报

38#
发表于 2008-12-16 12:27:30 | 只看该作者
原帖由 husiqin 于 2008-12-15 23:39 发表
终于搞定了,把sc.exe拷到一起去就好了。

你的方法太麻烦。你可以把我的哪个exe用rar打开看下。非常简单的。
回复

使用道具 举报

37#
发表于 2008-12-16 11:41:40 | 只看该作者
楼主把成功的东东,发到我的论坛上吧
winpe教育论坛
回复

使用道具 举报

36#
发表于 2008-12-15 23:39:13 | 只看该作者
终于搞定了,把sc.exe拷到一起去就好了。
回复

使用道具 举报

35#
发表于 2008-12-15 19:39:40 | 只看该作者
原帖由 yidawpf 于 2008-11-10 15:55 发表
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%\磁盘光盘\ULTRAISO"                            (这句是ultraiso not found的问题)

就是这个问题。我原来是这样的: ...

你的那个启动软件工具箱.EXE是怎样让其他的PE加载ISODrive.sys服务的。我用sc create ISODrive binPath= "%cd%\ISODrive.sys" type= kernel start= auto error= ignore在xp下加载ISODrive.sys服务没问题,在pe下不认sc命令,没法加载ISODrive.sys服务。但你的启动软件工具箱.EXE可以,能公布下方法吗?

[ 本帖最后由 husiqin 于 2008-12-15 19:48 编辑 ]
回复

使用道具 举报

34#
 楼主| 发表于 2008-11-10 17:54:51 | 只看该作者
请看短消息

cd /D d:\Program Files\ULTRAISO\drivers
isocmd -r
isocmd -number 2
isocmd -i
isocmd -change 1 z:
isocmd -mount z: f:\123\TYPE.ISZ
回复

使用道具 举报

33#
发表于 2008-11-10 17:46:02 | 只看该作者
原帖由 xiao75918 于 2008-11-10 17:15 发表
那文件关联可用吗,我发现你的winrar也没有关联上,点右键没有增加到压缩文件选项,建议这两个软件放进二级内核试一下。

文件关联可以用。
不知道你用哪个版本的V6测试的。winrar没有关联是因为路径错了吧。
新版的早解决这个问题了。
回复

使用道具 举报

32#
 楼主| 发表于 2008-11-10 17:15:16 | 只看该作者

回复 #31 yidawpf 的帖子

那文件关联可用吗,我发现你的winrar也没有关联上,点右键没有增加到压缩文件选项,建议这两个软件放进二级内核试一下。
回复

使用道具 举报

31#
发表于 2008-11-10 15:55:01 | 只看该作者
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%\磁盘光盘\ULTRAISO"                            (这句是ultraiso not found的问题)

就是这个问题。我原来是这样的:
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%"   

改成REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%\磁盘光盘\ULTRAISO"
就好了。

当然,我把isoshell.dll放到二级内核了。
回复

使用道具 举报

30#
 楼主| 发表于 2008-11-10 15:38:16 | 只看该作者
我也到V6上测试一下。
回复

使用道具 举报

29#
 楼主| 发表于 2008-11-10 15:36:56 | 只看该作者
原帖由 yidawpf 于 2008-11-10 14:44 发表
我把isoshell。.dll文件放到z:\外置程序\磁盘光盘\ultraiso里。
我用regsvr32 /s  "%tp%\磁盘光盘\ultraiso\isoshell.dll"
注册的。但是没有用。
后来我把isoshell.dl文件直接放到二级内核,regsvr32 /s "% ...


把下面的
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%"

路径改为"%CurDir%\磁盘光盘\ultraiso"

注册表文件为

需要设置一下UltraISO安装路径:

[HKEY_LOCAL_MACHINE\SOFTWARE\EasyBoot Systems\UltraISO\5.0]
@="C:\\Program Files\\UltraISO"

注意:将"C:\\Program Files\\UltraISO"替换为PE下的实际路径。

这样就可以解决ultraiso not found的问题,至于isoshell.dll注册没用可能是"%tp%\磁盘光盘\ultraiso\isoshell.dll"这个路径不对,直接放进二级内核也可以。

你的ini里的路径写的是"%CurDir%,还是把REGDOC.CMD里的tp全部替换成CurDir,关于ultraiso部分换成如下试试:
PUSHD %~dp0
SET CurDir=%CD%
PATH "%WINDIR%\SYSTEM32"    (设置系统路径,可能是regsvr32不能运行的原因)
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%\磁盘光盘\ULTRAISO"                            (这句是ultraiso not found的问题)
REG ADD HKCR\UltraISO\DefaultIcon /ve /t REG_SZ /d "%CurDir%\磁盘光盘\ULTRAISO\UltraISO.EXE,0" /f>NUL
REG ADD HKCR\UltraISO\shell\open\command /ve /t REG_SZ /d "\"%CurDir%\磁盘光盘\ULTRAISO\UltraISO.EXE\" "\"%%1\" /f>NUL
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /v DefViewer /t REG_SZ /d "%SystemRoot%\system32\NOTEPAD.EXE" /f>NUL
ftype UltraISO="%CurDir%\磁盘光盘\ULTRAISO\ultraiso.exe" "%%1"
assoc .iso=UltraISO
assoc .bin=UltraISO
assoc .isz=UltraISO
assoc .cue=UltraISO
assoc .mds=UltraISO
assoc .mdf=UltraISO     (这个可以只设一两个,就是一文件关联,进ultraiso也可以设置)
regsvr32 /s "%CurDir%\磁盘光盘\ULTRAISO\isoshell.dll"

再试试,期待v7早日出来。


回复

使用道具 举报

28#
发表于 2008-11-10 15:34:36 | 只看该作者
终于搞定了,有个路径错误。
就这么点问题,花了我一个多小时。
回复

使用道具 举报

27#
发表于 2008-11-10 14:44:34 | 只看该作者
我把isoshell。.dll文件放到z:\外置程序\磁盘光盘\ultraiso里。
我用regsvr32 /s  "%tp%\磁盘光盘\ultraiso\isoshell.dll"
注册的。但是没有用。
后来我把isoshell.dl文件直接放到二级内核,regsvr32 /s "%WINDIR%\SYSTEM32\isoshell.dll"
右键菜单有了。但是提示not found ultraiso。
请问怎么解决?
回复

使用道具 举报

26#
发表于 2008-11-10 14:08:14 | 只看该作者
那个右键关联我的pe里要运行两次才行。
回复

使用道具 举报

25#
发表于 2008-11-10 14:01:10 | 只看该作者
isoshell.dll必须在根目录下吗?
回复

使用道具 举报

24#
发表于 2008-11-10 13:43:44 | 只看该作者
奇怪,右键关联没有用啊。xp下可以。
回复

使用道具 举报

23#
发表于 2008-11-10 12:21:36 | 只看该作者
已经搞定了。谢谢。
回复

使用道具 举报

22#
 楼主| 发表于 2008-11-10 12:11:10 | 只看该作者
[quote]原帖由 yidawpf 于 2008-11-10 11:12 发表
assoc .cue=UltraISO
assoc .mds=UltraISO
assoc .mdf=UltraISO
assoc .nrg=UltraISO
assoc .img=UltraISO
assoc .ima=UltraISO
这些怎么用ini文件关联?

用cmd文件直接运行就可以了,用.reg也可
[HKEY_CLASSES_ROOT\.iso]
@="UltraISO"
[HKEY_CLASSES_ROOT\.isz]
@="UltraISO"
[HKEY_CLASSES_ROOT\.bin]
@="UltraISO"
[HKEY_CLASSES_ROOT\.img]
@="UltraISO"
[HKEY_CLASSES_ROOT\.ima]
@="UltraISO"
[HKEY_CLASSES_ROOT\.mds]
@="UltraISO"
[HKEY_CLASSES_ROOT\.mdf]
@="UltraISO"
[HKEY_CLASSES_ROOT\.nrg]
@="UltraISO"
[HKEY_CLASSES_ROOT\.bwt]
@="UltraISO"
[HKEY_CLASSES_ROOT\.cif]
@="UltraISO"
[HKEY_CLASSES_ROOT\.cdi]
@="UltraISO"
[HKEY_CLASSES_ROOT\.lcd]
@="UltraISO"
[HKEY_CLASSES_ROOT\.fcd]
@="UltraISO"
[HKEY_CLASSES_ROOT\.vcd]
@="UltraISO"


右键关联则要注册iisoshell.dll文件
regsvr32 /s "%CurDir%\isoshell.dll"
回复

使用道具 举报

21#
 楼主| 发表于 2008-11-10 11:54:31 | 只看该作者
原帖由 yidawpf 于 2008-11-10 11:14 发表
另外想问一下,怎么设置直接可以用右键加载到虚拟光驱。


见一楼,放了附件及说明确
回复

使用道具 举报

20#
发表于 2008-11-10 11:14:14 | 只看该作者
另外想问一下,怎么设置直接可以用右键加载到虚拟光驱。
回复

使用道具 举报

19#
发表于 2008-11-10 11:12:08 | 只看该作者
我把楼主说的两个文件替换后,启动pe电脑就自动分配了一个y盘的虚拟盘。
但是我没有关联isz、cue等文件。
想请教一下:
assoc .iso=UltraISO
assoc .bin=UltraISO
assoc .isz=UltraISO
assoc .cue=UltraISO
assoc .mds=UltraISO
assoc .mdf=UltraISO
assoc .nrg=UltraISO
assoc .img=UltraISO
assoc .ima=UltraISO
这些怎么用ini文件关联?
回复

使用道具 举报

18#
发表于 2008-11-10 10:39:14 | 只看该作者
能不能把方法详细的说一下。
帖子太乱了。不知道怎么弄。
回复

使用道具 举报

17#
 楼主| 发表于 2008-11-10 09:27:00 | 只看该作者
问题已解决,用martinx同志修改好的isocmd.exe与isodrive.sy_替换原文件即可,z:与Y:将被虚拟,以前设了Y:盘的请更改成其它磁盘。其它的虚拟软件可丢掉了,只用ULTRAISO就可以了.
ULTRAISO文件列表:isoshell.dll、uikey.ini、ULTRAISO.EXE(直接去http://cn.ezbsystems.com/ultraiso/download.htm下载最新简体中文版,uikey.ini是注册码文件,自己准备),再加一个cmd文件就可以:
@echo off
PUSHD %~dp0
SET CurDir=%CD%
PATH "%WINDIR%\SYSTEM32"
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /f /ve /t REG_SZ /d "%CurDir%"
REG ADD HKCR\UltraISO\DefaultIcon /ve /t REG_SZ /d "%CurDir%\UltraISO.EXE,0" /f>NUL
REG ADD HKCR\UltraISO\shell\open\command /ve /t REG_SZ /d "\"%CurDir%\UltraISO.EXE\" "\"%%1\" /f>NUL
REG ADD "HKCU\SOFTWARE\EasyBoot Systems\UltraISO\5.0" /v DefViewer /t REG_SZ /d "%SystemRoot%\system32\NOTEPAD.EXE" /f>NUL
ftype UltraISO="%CurDir%\ultraiso.exe" "%%1"
assoc .iso=UltraISO
assoc .bin=UltraISO
assoc .isz=UltraISO
assoc .cue=UltraISO
assoc .mds=UltraISO
assoc .mdf=UltraISO
assoc .nrg=UltraISO
assoc .img=UltraISO
assoc .ima=UltraISO
regsvr32 /s "%CurDir%\isoshell.dll"

isodrive.zip

41.13 KB, 下载次数: 89, 下载积分: 无忧币 -2

回复

使用道具 举报

16#
 楼主| 发表于 2008-11-7 20:03:19 | 只看该作者

回复 #14 dos时代菜鸟 的帖子

谢谢,我也发现一个问题,三位老大的isocmd.exe与isodrive.sys都是经过定制的,可成功挂载到Z盘,但不能挂载到其它盘,其文件比最新版ULTRAISO里的文件大一些,但版本号相同,最新版ULTRAISO里的isocdm.exe与定制的isodrive.sys可成功挂载到Z盘,但不能挂载到其它盘(如o:),其它组合挂载到Z盘都不行
回复

使用道具 举报

15#
发表于 2008-11-7 19:57:37 | 只看该作者
只包含两级内核的 iso
支持isocmd虚拟多个光盘。具体做法看9楼
http://www.namipan.com/d/WINPE_6 ... da94ff087610090bf02
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-11-16 18:42

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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