无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 2843|回复: 12

关于用 pecmd 挂载 vhd

[复制链接]
发表于 2020-6-23 19:04:58 | 显示全部楼层 |阅读模式
  1.       //挂载 y.vhd
  2.             moun -vhd "X:\ProgramData\pecmd.ini\Y.vhd",Y:
  3.       //得到y.vhd 对应盘号,并卸载自动分配的盘符设置其盘符为 y:
  4.             part -raw list drv Y: ,d_info
  5.             mstr vhd_diskn=<1>%d_info%
  6.             disk   ,%vhd_diskn%,1
  7.             disk   ,%vhd_diskn%,1
  8.             disk y:,%vhd_diskn%,1
复制代码

如上代码:有 vhd 盘 X:\ProgramData\pecmd.ini\Y.vhd 可以挂载到 y:

因为 pecmd 挂载y盘的同时,原有 自动分配的盘符也没有卸载掉,导致一个分区 对应两个盘符,所以要 卸载两次盘符,重新挂载下。


发表于 2020-6-23 23:30:53 | 显示全部楼层
感谢分享!还没用过这个功能,先收藏。
回复

使用道具 举报

发表于 2020-6-23 23:31:59 | 显示全部楼层
感谢分享
回复

使用道具 举报

发表于 2020-6-24 08:35:08 | 显示全部楼层
感谢分享。。
回复

使用道具 举报

发表于 2020-6-24 09:39:04 | 显示全部楼层
本帖最后由 20121010168 于 2020-6-24 09:41 编辑

谢谢分享,我是通过调用diskpart挂的

点评

我以前也是一直用diskpart 通过脚本实现, 但是 ,有的 ide 接口的 usb硬盘盒 用diskpart 的时候 会很长时间进不去 diskpart , 所以,考虑用 pecmd 了。效率还挺高。但是对于 有多个分区的 vhd ,就不能这么简单  详情 回复 发表于 2020-6-24 10:34
回复

使用道具 举报

 楼主| 发表于 2020-6-24 10:34:35 | 显示全部楼层
20121010168 发表于 2020-6-24 09:39
谢谢分享,我是通过调用diskpart挂的

我以前也是一直用diskpart 通过脚本实现,
但是 ,有的 ide 接口的 usb硬盘盒 用diskpart 的时候 会很长时间进不去 diskpart ,
所以,考虑用 pecmd 了。效率还挺高。但是对于 有多个分区的 vhd ,就不能这么简单了。
回复

使用道具 举报

发表于 2020-6-24 11:20:25 | 显示全部楼层
这个东西,红毛樱木大师早已有现成的代码:

//MOUN-vhd  [-c[x] -d -u -r] [-s:扇区大小] VHD路径,[Mount目标目录|大小],[ID],[返回名]
MOUN-vhd -c %&SystemROOT%\System32\Y.VHD,400M,,&Cret
MOUN-vhd %&SystemROOT%\System32\Y.VHD,Y:,,&Mret
//MESS. <%&Cret%>%&Mret%
MSTR * &&hd=<1>&Mret
IFEX $%&&hd%>=0,
{*
    PART -xup -super -force -mbr init %&&hd%
    PART -fs -super -force -xup  %&&hd%#1 a 0x0B 0 400M
    SHOW * %&&hd%#1,Y:
    DFMT Y:,FAT32,Y_VHD
}
MESS. OVER

点评

你这个是创建一个 400 M 的vhd ,并挂载。 我说的是 单纯的挂载。只是个例子,如果 已有的 vhd 中有多个分区的,会麻烦些,因为 pecmd 的 moun 指令在指派 盘符的时候 并不会把 自动分配的分区表盘符 卸载掉,会发  详情 回复 发表于 2020-6-24 11:30
回复

使用道具 举报

 楼主| 发表于 2020-6-24 11:30:23 | 显示全部楼层
489432757 发表于 2020-6-24 11:20
这个东西,红毛樱木大师早已有现成的代码:

//MOUN-vhd  [-c[x] -d -u -r] [-s:扇区大小] VHD路径,[Moun ...

你这个是创建一个 400 M 的vhd ,并挂载。

我说的是 单纯的挂载。只是个例子,如果 已有的 vhd 中有多个分区的,会麻烦些,因为 pecmd 的 moun 指令在指派 盘符的时候 并不会把 自动分配的分区表盘符 卸载掉,会发生一个分区 对应多个盘符的问题。

我说的是问题,你有啥好办法解决么?

点评

MSTR * &&hd=&Mret 提取出磁盘号之后一切都好办了吧,part list part就列出所有分区啦。  详情 回复 发表于 2020-6-24 18:32
回复

使用道具 举报

发表于 2020-6-24 18:32:11 | 显示全部楼层
本帖最后由 489432757 于 2020-6-24 18:34 编辑
dos时代菜鸟 发表于 2020-6-24 11:30
你这个是创建一个 400 M 的vhd ,并挂载。

我说的是 单纯的挂载。只是个例子,如果 已有的 vhd 中有多 ...

MSTR * &&hd=<1>&Mret
提取出磁盘号之后一切都好办了吧,part list part就列出所有分区啦。跟你的代码一样,挂载之前卸载一下。略表浅见,如有冒犯,请见谅。

点评

是个好方法,就是 还可能涉及到 盘符理顺 的事情,如果有 盘符 不连续或者 被占用的情况,就更麻烦。 如果用 subj 分配 一个特殊文字符号的盘符 ,不知道是否可行。  详情 回复 发表于 2020-6-24 21:59
回复

使用道具 举报

 楼主| 发表于 2020-6-24 21:59:00 | 显示全部楼层
489432757 发表于 2020-6-24 18:32
MSTR * &&hd=&Mret
提取出磁盘号之后一切都好办了吧,part list part就列出所有分区啦。跟你的代码一样 ...

是个好方法,就是 还可能涉及到 盘符理顺 的事情,如果有 盘符 不连续或者 被占用的情况,就更麻烦。
如果用 subj 分配 一个特殊文字符号的盘符 ,不知道是否可行。

点评

和正常磁盘一样操作分区的  详情 回复 发表于 2020-6-24 22:23
回复

使用道具 举报

发表于 2020-6-24 22:23:05 来自手机 | 显示全部楼层
dos时代菜鸟 发表于 2020-6-24 21:59
是个好方法,就是 还可能涉及到 盘符理顺 的事情,如果有 盘符 不连续或者 被占用的情况,就更麻烦。
如 ...

和正常磁盘一样操作分区的

点评

刚才测试了下 把 vhd 挂在到 阿拉伯数字做为 盘符 ,比如 9: 这样的盘符,能够成功,而且 wim 也能 通过 imagex 6.0 挂载到 9: 上,毕竟都是 cmd 下的操作,但是 要把 9: 盘上的程序 关联到菜单或者桌面,就不行了,  详情 回复 发表于 2020-6-24 23:53
回复

使用道具 举报

 楼主| 发表于 2020-6-24 23:53:33 | 显示全部楼层
红毛樱木 发表于 2020-6-24 22:23
和正常磁盘一样操作分区的

刚才测试了下 把 vhd 挂在到 阿拉伯数字做为 盘符 ,比如 9: 这样的盘符,能够成功,而且 wim 也能 通过 imagex 6.0 挂载到 9: 上,毕竟都是 cmd 下的操作,但是 要把 9: 盘上的程序 关联到菜单或者桌面,就不行了,可能时 explorer 不识别这个 盘符 导致的,
不知道 用  winxshell  行不行。

点评

不只是explorer不支持,好多第三方程序也不支持  详情 回复 发表于 2020-6-25 00:27
回复

使用道具 举报

发表于 2020-6-25 00:27:06 来自手机 | 显示全部楼层
dos时代菜鸟 发表于 2020-6-24 23:53
刚才测试了下 把 vhd 挂在到 阿拉伯数字做为 盘符 ,比如 9: 这样的盘符,能够成功,而且 wim 也能 通过  ...

不只是explorer不支持,好多第三方程序也不支持
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-17 05:45

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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