guyue2011 发表于 2015-12-30 23:29:45

挂载GPT硬盘的ESP分区工具--FindESP2.0

本帖最后由 guyue2011 于 2016-1-2 14:53 编辑

挂载GPT硬盘的ESP分区工具--FindESP


一个为了方便重装系统, 挂载或卸载esp分区的辅助工具--findesp.
问题由来:1, 有时重装系统, 当EFI引导+GPT磁盘, 需要修复新系统在esp分区中的引导,    当有多个gpt硬盘, 就会有多个esp分区, 常规工具不能很好的判断出系统分区所在磁盘的esp分区盘符. 2, 有些老PE, 如03PE, 0PE, 不能百分百的成功挂载gpt磁盘的esp分区, 所以在gpt硬盘上安装系统时, 需要挂载esp分区.3, 小白在gpt硬盘重装系统时, 不知道哪一个才是esp分区, 或者在给gpt硬盘修复引导时, 不知道应该选择哪一个分区作为引导分区.4, 技术人员在实现自动化重装时, 可以借助本工具找到esp分区, 实现gpt硬盘+uefi引导情况下的自动化重装.
作用:
1, 挂载或卸载所有磁盘的esp分区
2, 挂载或卸载指定盘符对应磁盘的esp分区
3, 挂载或卸载指定磁盘号的磁盘的esp分区
4, 输出当前已有盘符

开发:
计算机协会BluerQQ905750221
有什么疑问或想要的新功能都可以回帖或QQ交流

下载及更新说明:
2.0版本

(1)实现挂载或卸载esp分区功能
(2)增加”-show”参数, 输出当前已有盘符

1.0版本
开发时使用, 不提供下载
(1) 实现挂载esp分区的基本功能

传送门:
ESP分区挂载工具MountESP (2013-06-15)
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=300166&fromuid=561507
本工具算是clonecd前辈的mountesp工具的增强版吧.

说明:
1, 已挂载的esp分区, 不会重复挂载
2, 多GPT硬盘, 多个esp分区, 都可以挂载或卸载.
3, 挂载的盘符, 自动按C-Z盘的顺序选择没有分配的盘符, 最后才选择A,B这两个盘符, 若26个盘符都被使用, 则输出error
4, 本工具不依赖于diskpart, mountvol,findstr等第三方工具, 包括clonecd前辈开发的mountesp
5, PE环境下运行, 对是否管理员运行不做要求; 若本机系统下运行, 最好以管理员运行,   若以管理员运行,须在管理员帐号下登录系统才可以看到效果,    或者在”任务管理器”->”运行新任务”->”浏览”中可以看到挂载的盘符.
6, 本工具在自用的03PE, 0PE, 8PE下通过测试
7, 重启后挂载的盘符自动消失, 绿色无后遗症
8, 本工具仅对硬盘,移动硬盘的esp分区有效, 其他隐藏分区, U盘等移动设备的esp分区均无效.(原因可参见12楼)
9, BIOS或UEFI引导, MBR或GPT硬盘, 下均可运行本工具, 无副作用
10, 工具分为32(x86)和64位版本, 理论上x86(32位)版本可以在各种系统下运行, 在某些纯64位系统, 可以使用x64位版本.

调用:
批处理或者cmd命令行下, 如下调用
Findesp.exe[-mount:[盘符]|[磁盘号]|[* ]] | [-unmount:[盘符]|[磁盘号]|[* ]] | [-show]

参数:
不带参数
例子: findesp
输出findesp的使用说明

-mount:<盘符>
例子: findesp -mount:C
将C盘所在磁盘的所有esp分区挂载, 已挂载的不会重复挂载, 并输出挂载的盘符, 如果不成功或没有esp分区则输出error

-mount:<磁盘号>
例子: findesp -mount:0
将磁盘0中所有的esp分区挂载, 已挂载的不会重复挂载, 并输出挂载的盘符, 如果不成功或没有esp分区则输出error

-mount
-mount:*
例子: findesp -mount:* 或 findesp -mount
将全部磁盘的所有esp分区挂载, 已挂载的不会重复挂载, 并输出挂载的盘符, 如果不成功或没有esp分区则输出error

-unmount:<盘符>
例子: findesp -unmount:C
将C盘所在磁盘的所有esp分区卸载, 已卸载的不会重复卸载, 并输出卸载的盘符, 如果不成功或没有esp分区则输出error

-unmount:<磁盘号>
例子: findesp -unmount:0
将磁盘0中所有的esp分区卸载, 已卸载的不会重复卸载, 并输出卸载的盘符, 如果不成功或没有esp分区则输出error

-unmount
-unmount:*
例子: findesp -unmount:* 或 findesp -unmount
将全部磁盘的所有esp分区卸载, 已卸载的不会重复卸载, 并输出卸载的盘符, 如果不成功或没有esp分区则输出error

如果传入多个有效参数
例子: findesp -mount:D -unmount:1 -mount:*
按顺序执行-mount:D, -unmont:1, -mount:* 对应的操作, 并按顺序输出对应文字

-show
例子:Findesp -show
输出当前已有盘符

批处理调用和使用:
已在下载的压缩包中提供

使用方法演示:(单击查看大图)






答疑解惑:
1.这个FindESP工具,相比mountvol, diskpart, mountesp等工具有什么优势呢?   
   答:mountvol, 微软命令行工具, win8, win7的mountvol可挂载esp分区, 但不会输出挂载后的盘符, 和不能在win03PE, 0pe上运行, 而win03, 0pe的mountvol能在win8上运行, 但是不能挂载esp分区, 因为不支持这个参数.
      diskpart, 微软命令行工具, 可挂载esp分区到指定盘符, 但是使用复杂, 不好实现自动化编程, 调用自动化, 且组件复杂, 不易单独提取出来.
      mountesp, clonecd前辈的开发的工具, 只有一个执行文件, 可挂载esp分区, 但是没有输出挂载后的盘符, 且不支持挂载指定硬盘 或者 指定分区所在硬盘的esp分区.
      findesp, 第三方工具, 只有一个执行文件, 规避了上述工具的不足, 并加以增强, 详情请看上述说明.








lbw2007 发表于 2015-12-31 01:15:12

支持原创!感谢您的无私分享!!!

guyue2011 发表于 2015-12-30 23:43:03

占楼{:2_127:}{:2_127:}{:2_127:}

guyue2011 发表于 2015-12-30 23:43:24

再占一楼...{:2_127:}{:2_127:}{:2_127:}

yang77 发表于 2015-12-31 00:36:56

感谢你的开发成果

xq8751 发表于 2015-12-31 08:12:01

楼主辛苦了,谢谢分享!!!

2012hzy6420 发表于 2015-12-31 08:19:53

谢谢分享{:3_137:}

cheong0hk 发表于 2015-12-31 09:24:23

感谢您的无私分享!!!

moran 发表于 2015-12-31 09:48:09

感谢分享,支持原创

horseman 发表于 2015-12-31 10:46:56

看了下介绍,很不错。感谢分享。

527104427 发表于 2015-12-31 11:07:37

貌似没用

guyue2011 发表于 2015-12-31 12:27:35

本帖最后由 guyue2011 于 2015-12-31 13:28 编辑

527104427 发表于 2015-12-31 11:07
貌似没用

哈哈...其实这个问题...是程序有意为之的.
   程序只会挂载硬盘的所有esp分区 (移动硬盘没有测试过, 理论上没问题), 并输出盘符,对于U盘等移动设备的esp分区是不会挂载的, 是出于如下考虑:
   1, 在U盘使用gpt分区表, 创建esp分区, 貌似对PE没意义咧, 甚至据我测试, 启动盘如果改为GPT分区表, 是不能启动PE的
   2, 如果硬是把U盘和硬盘的esp分区挂载出来, 这么多esp分区盘符, 可能会让小白困惑, 不知道哪一个盘才是硬盘的esp分区, 让修复引导, 或者重装时选择引导分区的步骤产生困惑.
   3, 关于只能挂载硬盘esp分区的说明, 会更新到帖子中的..
   4, 当然如果5大前辈对这个问题有更好的看法, 可以交流哈, 可以在未来版本中实现这种更好的想法

527104427 发表于 2015-12-31 14:14:53

本帖最后由 527104427 于 2015-12-31 14:16 编辑

guyue2011 发表于 2015-12-31 12:27
哈哈...其实这个问题...是程序有意为之的.
   程序只会挂载硬盘的所有esp分区 (移动硬盘没有测试 ...

1.或许你可以加个开关,挂载所有ESP,包括移动硬盘和U盘。

2.按理说,-mount:* 应该包含所有情况嘛,或许加个排除开关?排除U盘和移动硬盘?

3.请问楼主是得了CloneCD的源码吗?

devilma 发表于 2015-12-31 21:54:21

不错的说,绝对支持啊。。。

nmscl 发表于 2016-1-1 06:24:35

谢谢分享。

guyue2011 发表于 2016-1-2 14:31:58

527104427 发表于 2015-12-31 14:14
1.或许你可以加个开关,挂载所有ESP,包括移动硬盘和U盘。

2.按理说,-mount:* 应该包含所有情况嘛 ...

新年快乐哦....{:2_127:}
元旦玩去了..没看论坛..现在看到了..
   1, 现阶段的2.0版本 , 只针对移动硬盘, 硬盘有效, U盘是无效的, 原因是当初设计的目的就为了方便重装系统找到esp分区, 现阶段的功能够用了.
   2, 加个开关的确不错, 但是这又得去折腾了, 暂时没有足够多的动力和精力更新啊~, 除非有更多的人反映这个需求, 或者有更好的实现该功能的必要性. 嘻嘻..{:3_144:}
   3, 并没有得到cloneCD的源码, 这工具属于原创, 算是为PE界做出的贡献吧.

527104427 发表于 2016-1-2 14:44:13

guyue2011 发表于 2016-1-2 14:31
新年快乐哦....
元旦玩去了..没看论坛..现在看到了..
   1, 现阶段的2.0版本 , 只针对移动硬 ...

这样就不对了,现在他们折腾的什么三分区,UEFI启动,就会在U盘上分一个ESP分区。
不过,PECMD也能挂载。楼主不折腾就算了。

2012eye 发表于 2016-1-4 12:37:10

谢谢谢谢谢谢

guyue2011 发表于 2016-1-6 11:36:33

没什么人气啊 , 自顶一个...

devilma 发表于 2016-1-6 11:55:03

不错,很是方便……

guyue2011 发表于 2016-1-6 12:26:08

devilma 发表于 2016-1-6 11:55
不错,很是方便……

谢谢支持哈..
   这工具我是自用来作为自动化重装的辅助工具的..以后可能会出一个借助这工具实现自动化重装的工具..{:3_148:}

guyue2011 发表于 2016-1-16 11:39:24

拉拉人气吧..{:2_123:}

boy6585948 发表于 2016-1-16 14:44:27

本帖最后由 boy6585948 于 2016-1-16 14:45 编辑

终于找到了,感谢LZ!!!建议 出个帮助文档!!!

guyue2011 发表于 2016-1-16 18:40:05

boy6585948 发表于 2016-1-16 14:44
终于找到了,感谢LZ!!!建议 出个帮助文档!!!

哈哈   谢谢支持
帮助文档在帖子中有说明咧, 或者直接 不传参数 的 调用本程序 也会输出使用说明的

本工具算是clonecd前辈的mountesp工具的增强版吧, 可以这两个工具对比着使用

   如果有什么疑问或想增强的功能都可以提出呗{:3_144:}

guyue2011 发表于 2016-1-21 00:11:15

深夜支持

Androidx86 发表于 2016-6-19 17:34:00

这竟然还是 Windows 命令行程序,而且还带输出!太好了。

1720850782 发表于 2016-6-21 10:46:59

多谢了,我正好需要

23456 发表于 2016-8-12 22:42:36

楼主 可以指定挂载后的盘符吗   

guyue2011 发表于 2016-9-6 21:47:49

23456 发表于 2016-8-12 22:42
楼主 可以指定挂载后的盘符吗

暂时不支持 因为万一指定的盘符已经被使用呢就会失败了所以自动挂载没被使用的盘符好了

JCDN 发表于 2016-9-8 10:32:47

guyue2011 发表于 2016-1-6 11:36
没什么人气啊 , 自顶一个...

看介绍功能比较强大,虽然平时这类软件用的非常少,不过留下备用了。

感谢楼主分享,论坛有你更精彩!
页: [1] 2
查看完整版本: 挂载GPT硬盘的ESP分区工具--FindESP2.0