在Win7下如何自动加载虚拟磁盘VHD文件

92 篇文章 3 订阅
55 篇文章 7 订阅

转自 http://blog.csdn.net/robinsone/article/details/43764221



如果想把所有资料全部放在一个动态的VHD中,在Windows 7系统下需要使用时将其附加,在VPC中需要时再将VHD从Windows 7系统中分离,再挂到VPC上,这样,两边任何操作都会直接影响到VHD,不必进行多余的复制等操作,十分方便。

  使用了一段时间之后,便发现附加VHD虽然好用但是操作实在麻烦,每次重启之后都要重新附加,挂到VPC之前还要先在系统中分离,每天往复操作N次,实在有些忍受不了,晚上闲来无事,写了两个小脚本,用来实现快速挂载(附加)和分离VHD文件:

  

Win7下如何自动加载虚拟磁盘VHD文件

1) 编写一个自动脚本,假设命名为loadVHD.cmd,内容如下

@echo off 
echo select vdisk file="D:\Alfresco.vhd" >vhdsel 
echo attach vdisk >>vhdsel 
echo list disk >>vhdsel 
diskpart /s vhdsel 
del /f /q vhdsel 
exit


  

  分离VHD的脚本,只需要将上述代码中 attach vdisk 命令改写为 detach vdisk 即可。

2) 打开组策略控制台gpedit.msc,从计算机配置->Windows设置->脚本->启动,添加上面的脚本文件

 



win7批处理:双击挂载 VHD 文件  


@echo off
::批处理将在 C:\Windows 下生成三个脚本,分别用于挂载及卸载VHD。
::双击 VHD 虚拟盘文件即可挂载。
::右击盘符 -- 菜单选择“卸载 VHD 盘” 可卸载所有VHD盘。
 
 
::脚本内容:
 
 
::生成 “挂载VHD.cmd”
(echo ^(echo select vdisk file=%%1
echo echo attach vdisk
echo echo list partition^) ^| diskpart ^> %windir%\DiskPart.ini 
 
echo for /f "skip=16 tokens=2" %%%%a in ^(%windir%\DiskPart.ini^) do ^(echo select vdisk file=%%1
echo echo sel part %%%%a 
echo echo assign ^) ^| diskpart ) >  %windir%\挂载VHD.cmd
 
 
:: 生成 “挂载VHD.vbs”
( echo cmdl = Wscript.Arguments^(0^) ^& " """ ^& Wscript.Arguments^(1^) ^& """"
echo createObject^("wscript.shell"^).run cmdl,0 ,True
echo createObject^("wscript.shell"^).run "Explorer /e," )> %windir%\挂载VHD.vbs
 
 
 
 
:: 生成 “卸载VHD.vbs”
( echo cmdl = "cmd.exe /c For /f ""skip=8 tokens=6*"" %%a in ('echo list vdisk ^| diskpart') do (echo select vdisk file=""%%b"" & echo detach vdisk ) ^| diskpart"
echo createObject^("wscript.shell"^).run cmdl,0
) > %windir%\卸载VHD.vbs
 
 
:: 注册 VHD 文件
assoc .vhd=VHDfile
ftype VHDfile=Wscript  //E:vbscript %windir%\挂载VHD.vbs "%windir%\挂载VHD.cmd" "%%1"
 
:: 盘符右键菜单添加 "卸载 VHD 盘" 项
Reg add "HKEY_CLASSES_ROOT\Drive\shell\卸载 VHD 盘\command" /ve /d "Wscript //E:vbscript %windir%\卸载VHD.vbs" /f
 
pause


  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值