无忧启动论坛

标题: 虚拟磁盘自动挂载与卸载 [打印本页]

作者: nttwqz    时间: 2015-9-3 00:02
标题: 虚拟磁盘自动挂载与卸载
本帖最后由 nttwqz 于 2016-10-7 12:46 编辑

咳咳,还是那句话,大神请绕道。也不晓得要发到哪个区,本坛有还是没有,如果有,请版主删除,如果区不对,请版主移贴。


本来自己修改PE用VHD挂载与卸载都是通过计算机管理实现,但是,后来觉得太繁琐了,想写个批处理来实现,后来写出来了,是手动选择的,要输入,还是觉得麻烦,于是就做成了自动的了。打开,已挂载,则卸载;已卸载,则挂载。就像拉线式电灯开关,拉一次就好了。


filepath=后面的内容是个例子,改成自己的路径,也可以改成%1或%~f1,建个快捷方式到发送到文件夹,以后只要右键vhd文件发送到即可自动挂载与卸载。


需要管理员权限,建立个快捷方式,属性→快捷方式选项卡→高级→用管理员身份运行。




  1. @echo off
  2. color 3f
  3. title 虚拟磁盘自动挂载与卸载
  4. reg query HKU\S-1-5-20>nul 2>nul||echo 需要管理员权限运行!&&pause>Nul&&exit
  5. rem 全自动挂载与卸载指定虚拟磁盘文件
  6. rem 打开后自动检测并执行,若已挂载,则卸载,若已经卸载,则挂载。
  7. rem 请将虚拟磁盘文件的完整路径写在”filepath=“后面,支持带空格路径。
  8. rem “autoopen=ON” 可在挂载后自动打开虚拟磁盘上的所有分区,“ON”改成其它值则不打开。


  9. rem 设置
  10. set filepath=C:\Users\ABC\VirtualBox VMs\7\asdfa.vhd
  11. set autoopen=ON


  12. if not exist "%filepath%" echo filepath设置错误,请检查并重试!&&pause>nul&&exit
  13. pushd %~dp0\

  14. rem 检测
  15. echo select vdisk file="%filepath%">vdisktemp.txt
  16. echo detail vdisk>>vdisktemp.txt
  17. diskpart /s vdisktemp.txt|(findstr 找不到关联的磁盘号 >nul 2>nul)&&goto :挂载||goto :卸载


  18. :挂载
  19. echo select vdisk file="%filepath%">vdisk-attach.txt
  20. echo attach vdisk>>vdisk-attach.txt
  21. echo detail disk>>vdisk-attach.txt
  22. diskpart /s vdisk-attach.txt>vdisklog.txt
  23. for /f "tokens=3" %%a in ('findstr 磁盘分区 vdisklog.txt') do (if /i "%autoopen%"=="ON" start %%a:)
  24. goto :清理临时文件

  25. :卸载
  26. echo select vdisk file="%filepath%">vdisk-detach.txt
  27. echo detach vdisk>>vdisk-detach.txt
  28. diskpart /s vdisk-detach.txt
  29. goto :清理临时文件

  30. :清理临时文件
  31. del vdisk-attach.txt /f /q>nul 2>nul
  32. del vdisk-detach.txt /f /q>nul 2>nul
  33. del vdisktemp.txt /f /q>nul 2>nul
  34. del vdisklog.txt /f /q>nul 2>nul
  35. exit
复制代码

作者: xzf680    时间: 2015-9-3 00:22
不错,学习一下!
感谢分享!
作者: lzy157    时间: 2015-9-3 00:27
真的不错,很好用!                                                                 
谢谢楼主分享!               
作者: lbw2007    时间: 2015-9-3 12:39
之前也有人发过,
感谢分享!
作者: nttwqz    时间: 2015-9-3 15:40
lbw2007 发表于 2015-9-3 12:39
之前也有人发过,
感谢分享!

早知道我就搜索一下,也省的自己编了……
作者: lbw2007    时间: 2015-9-6 09:13
nttwqz 发表于 2015-9-3 15:40
早知道我就搜索一下,也省的自己编了……


就是这个,他也是转载别人的:
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=369369
作者: nttwqz    时间: 2015-9-6 11:49
lbw2007 发表于 2015-9-6 09:13
就是这个,他也是转载别人的:
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=369369

竟然是vbs脚本,我不会写。。。

前天也搜出来一个批处理(拖动版)。
作者: devilma    时间: 2015-9-11 19:39
不错!可以学习一下下……
作者: trader    时间: 2016-10-7 12:35
请教楼主,如果是VHD盘是加密的,代码里需写上密码,
这个如何写呢?
作者: ge    时间: 2017-8-16 14:06
这个可以用到右键吗?须要TXT吗?
作者: jkt01    时间: 2019-12-10 18:37
支持




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