无忧启动论坛

标题: Win7PE专用:双击.VHD文件,可直接挂载和卸载.VHD文件(不用第三方软件) [打印本页]

作者: 网虫2008    时间: 2010-9-30 23:06
标题: Win7PE专用:双击.VHD文件,可直接挂载和卸载.VHD文件(不用第三方软件)
首先要感谢 plutoshen  的帮助和建议
弄这个东东,主要是为了方便对VHD系统进行步步为营的IMAGEX备份.。

功能:WIN7PE下,双击.VHD文件可直接加载.VHD到Z盘,再次双击将执行卸载
如要在桌面WIN7系统中使用,可以复制一个PECMD.EXE到SYSTEM32文件夹或附件的文件夹内。

将附件解压后放到 X:\ 盘根目录或其他可写分区(最好放到根目录或放到没有空格的文件夹中)

执行 SETUP.CMD 进行注册(可以刷新一下系统,.VHD文件就有图标显示了,不刷新也没问题)

双击 .VHD文件,将创建Z:\盘,并将.VHD挂载到Z:\,挂载后,自动展开Z:\盘,,

挂载完成后,将.VDH的默认关联改为卸载(也就是说:再次双击直接执行卸载,,同时.VHD文件再次默认为双击执行加载)

在我的WIN7PE中测试通过,朋友们如有时间帮忙测试下,如无问题,就集成到我下一版的WIN7PE中了。。






[ 本帖最后由 网虫2008 于 2010-10-2 01:35 编辑 ]

load_vhd.rar

1.08 KB, 下载次数: 868, 下载积分: 无忧币 -2


作者: 网虫2008    时间: 2010-9-30 23:33
我对diskpart不熟,,

如果.VHD文件是在光盘中,双击挂载不成功,,说是什么权限问题,

不知道这是diskpart本身对只读文件的限制还是VHD在只读介质时,挂载要用其他的diskpart参数?

熟悉diskpart的朋友帮忙指导一下下,,,
作者: fujianabc    时间: 2010-10-1 09:47
用这个,可以在win7/2008 r2中用右键挂载和卸载vhd文件,不用diskpart命令了
作者: 网虫2008    时间: 2010-10-1 11:17
原帖由 fujianabc 于 2010-10-1 09:47 发表
用这个,可以在win7/2008 r2中用右键挂载和卸载vhd文件,不用diskpart命令了


这个注册表项的内容用到了PECMD,,如果要在桌面WIN7下使用,,要复制个PECMD.EXE到系统的SYSTEM32文件夹,或放到程序文件夹中
作者: 网虫2008    时间: 2010-10-1 11:23
哎,,这下载的人虽然不多,,也二十多位了,,怎么没有一个人说下测试结果呀??

我在自己的WIN7上测试没问题,,可我对VDH从来没接触过,,心里没底呀!!
作者: fujianabc    时间: 2010-10-1 12:55
原帖由 fujianabc 于 2010-10-1 09:47 发表
用这个,可以在win7/2008 r2中用右键挂载和卸载vhd文件,不用diskpart命令了

抱歉,我漏贴地址,我是说下面的软件能够直接在win7中右键挂载/卸载vhd
http://blog.compugeeksoftware.com/blog/software/updates/vhd-mount-1-0-2-0/
作者: 网虫2008    时间: 2010-10-1 13:22
原帖由 fujianabc 于 2010-10-1 12:55 发表

抱歉,我漏贴地址,我是说下面的软件能够直接在win7中右键挂载/卸载vhd
http://blog.compugeeksoftware.com/blog/software/updates/vhd-mount-1-0-2-0/


你的地址进不去呀,,,我也知道有软件可以实现,,但我的这个只是加了加注册表,也了几行.CMD,
一切都不用第三方软件,直接用WIN7自带的partition.EXE
作者: M    时间: 2010-10-1 14:27
对这个不熟悉,关注学习中。
作者: fujianabc    时间: 2010-10-1 14:36
原帖由 网虫2008 于 2010-10-1 13:22 发表


你的地址进不去呀,,,我也知道有软件可以实现,,但我的这个只是加了加注册表,也了几行.CMD,
一切都不用第三方软件,直接用WIN7自带的partition.EXE

你的要pecmd啊
作者: 网虫2008    时间: 2010-10-1 16:23
原帖由 fujianabc 于 2010-10-1 14:36 发表

你的要pecmd啊


PE下用的东西,我都习惯用PECMD.EXE了,,用到PECMD和加载VHD程序无关,只是用PECMD在注册表项的内容上ENVI
作者: plutoshen    时间: 2010-10-1 18:06
提示: 作者被禁止或删除 内容自动屏蔽
作者: wangziqiang    时间: 2010-10-2 00:33
好东西  学习中 win7pe 很少用
作者: plutoshen    时间: 2010-10-2 19:11
提示: 作者被禁止或删除 内容自动屏蔽
作者: plutoshen    时间: 2010-10-2 19:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: 网虫2008    时间: 2010-10-2 19:18
原帖由 plutoshen 于 2010-10-2 19:12 发表
测试了虫虫的批处理,完全正常。


呵呵,,正常就好,你经常使用VDH,如测试通过我心晨就有底了,下版集成到WIN7PE中,,

哎,这帮坏小子,只下载不回来反馈结果,,还是你够朋友。
作者: jinshuang    时间: 2010-10-2 20:37
对这个不熟悉....
作者: plutoshen    时间: 2010-10-3 09:32
提示: 作者被禁止或删除 内容自动屏蔽
作者: 网虫2008    时间: 2010-10-3 10:51
原帖由 plutoshen 于 2010-10-3 09:32 发表
用win7的都知道vhd的。
不过,比起veket的sfs来说,win7的vhd又是小儿科了。


哎,,VHD只听过没用了,,

veket的sfs,,偶连听都没听过,,

惭愧!惭愧!
作者: plutoshen    时间: 2010-10-5 09:18
提示: 作者被禁止或删除 内容自动屏蔽
作者: ming6595    时间: 2010-10-5 18:57
为何不改为加载到可用盘符呢 如

:vhd_drive
for %%d in (Z: Y: X: W: V: U: T: S: R: Q: P: O: N: M: L: K: J: I: H: G: F: E: D: C: B: A:) do (
if not exist %%d\nul set vhd_drive=%%d&&goto :vhd_drive_ok
)
color 4f
cls
echo.
echo.虚拟硬盘找不到空闲的可用盘符
echo.
set /p t=按回车键将退出. . .
exit
:vhd_drive_ok

:attach

if not exist %vhd_drive%\nul diskpart /s "%temp%\attach.txt"&&goto :attach

:attach_ok

[ 本帖最后由 ming6595 于 2010-10-5 19:03 编辑 ]
作者: 网虫2008    时间: 2010-10-7 14:36
原帖由 ming6595 于 2010-10-5 18:57 发表
为何不改为加载到可用盘符呢 如

:vhd_drive
for %%d in (Z: Y: X: W: V: U: T: S: R: Q: P: O: N: M: L: K: J: I: H: G: F: E: D: C: B: A:) do (
if not exist %%d\nul set vhd_drive=%%d&&goto :vhd_dri ...


这个建议好,,

等集成到我的PE时,把 A  B  X  Y 去掉,实时查可用盘符,,谢谢!
作者: plutoshen    时间: 2010-10-7 16:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: 网虫2008    时间: 2010-10-7 18:21
原帖由 plutoshen 于 2010-10-7 16:38 发表


这样不麻烦吗?

另外,每次都不知道加载后的盘符是哪个,如果有下一步操作怎么办?


说的也是,,这个也不用太人性化的,,反正要集成到PE里,,肯定是没有Z盘的,,如果要集成到有Z盘的PE中,大不了小改一下CMD,,
作者: kinglion    时间: 2010-10-8 12:31
标题: 教你挂载、卸载 VHD
diskpart很好用。

1,你可以建一个文本文件,例如 myvhd.ini

内容如下:

select vdisk file = "f:\myvhd.vhd"
attach vdisk


文中 f:\myvhd.vhd 为你的VHD文件。

2,建一个 挂载 f:\myvhd.vhd 的脚本,例如 vhd.cmd

内容如下:

diskpart /s myvhd.ini

在DOS窗口下 运行 vhd.cmd脚本,即可挂载 f:\myvhd.vhd;

==========================================
关于卸载

3,你可以建一个文本文件,例如 demyvhd.ini

内容如下:

select vdisk file = "f:\myvhd.vhd"
detach vdisk


4,建一个卸载f:\myvhd.vhd 的脚本,例如 devhd.cmd

内容如下:

diskpart /s demyvhd.ini

运行 devhd.cmd 即可卸载 刚才挂载的 f:\myvhd.vhd

懂了以上道理,自己就可随心所欲地挂载、卸载了。
作者: 网虫2008    时间: 2010-10-8 13:32
原帖由 kinglion 于 2010-10-8 12:31 发表
diskpart很好用。

1,你可以建一个文本文件,例如 myvhd.ini

内容如下:

select vdisk file = "f:\myvhd.vhd"
attach vdisk


文中 f:\myvhd.vhd 为你的VHD文件。

2,建一个 挂载 f:\myvhd.vhd ...




是呀,,我的这个用的就是这个道理,,说白了简单的很,,只是我把它关联了VHD文件,,启动后,双击即加载,再次双击即卸载罢了,,,耍了了小聪明,见笑见笑!!!
作者: plutoshen    时间: 2010-10-9 08:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: chenall    时间: 2011-4-29 00:46
因为最近经常在整VHD文件用于测试,

为了方便就自己搞了一个类似的批处理.

使用了系统自带的DISKPART,REG,FIND三个命令.

单个批处理文件实现自动挂载/卸载,关联/取消关联VHD文件.并且不使用临时文件.

用了几天一切OK,晚上再完善了一下分享给我的朋友们

有兴趣可以试用一下.

http://chenall.net/post/vhd_mnt/
作者: yueyezhan    时间: 2011-4-29 00:59
windows8现在的泄露版本已经把挂载 脱挂vhd iso集成到右键菜单了
作者: ls68057121    时间: 2011-4-29 01:00
我有点搞部懂VHD啊,是不是可以直接使用来做系统的啊?
作者: Wisdom1978    时间: 2012-6-9 01:08
将这些文件都放到SYSTEM32中就成功使用了。谢谢老大。
作者: kxlong3134    时间: 2016-9-24 22:58
如要在桌面WIN7系统中使用,可以复制一个PECMD.EXE到SYSTEM32文件夹或附件的文件夹内。
PECMD.EXE从那里下载 找了一圈没有
作者: 易广白    时间: 2016-9-25 11:17
本帖最后由 易广白 于 2016-9-25 21:36 编辑

感谢!!大师辛苦了!!谢谢大师分享!!支持大师

作者: zhaogang4346    时间: 2019-10-28 20:18
可以用,但是同时挂载多个VHD时存在问题




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