无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 133997|回复: 200
打印 上一主题 下一主题

[原创] ESP分区挂载工具MountESP (2013-06-15)

    [复制链接]
跳转到指定楼层
1#
发表于 2013-4-12 15:13:15 | 显示全部楼层 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 clonecd 于 2014-4-15 22:47 编辑

挂载ESP分区的工具。

特点:
    1. 仅挂载ESP分区,不挂载其它隐藏分区;
    2. 不管ESP分区是不是GPT磁盘的第一个分区都可以挂载;
    3. 支持多个GPT磁盘上的多个ESP分区;
    4. 已挂载的ESP分区不会重复挂载;
    5. Windows、PE中都可以运行;
    6. 不依赖diskpart和findstr等其它第三方工具;
    7. 不是ESP分区,运行此工具没有任何副作用;
    8. 重启后挂载的盘符自动消失,真正的无后遗症。

用法:
    CMD命令行下,输入MountESP回车运行就完事。当然用在批处理也行啊。

    PE中用 EXEC =!MountESP.exe 就行了。

下载:
2013-06-15

    MountESP-32bit-20130615.rar (5.04 KB, 下载次数: 3018)     32位

    MountESP-64bit-20130615.rar (8.69 KB, 下载次数: 5347)    
纯64位

更新说明:
      1. 增强代码的健壮性;
      2. 解决一些超级计算机挂N多硬盘的问题,解决某些个GPT硬盘有N多分区的问题。
===========================================================

常见问题:
    1.  是否通用:
         http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=300166&pid=2768790&fromuid=109169

    2. 为什么在Win 8/8.1中挂载后看不到挂载的ESP分区?
        http://bbs.wuyou.net/forum.php?mod=viewthread&tid=310478&page=1&extra=#pid2796455

    3. 其余问题请看完本帖前5页,如有疑问再提。


有图有真相:
1. 多个GPT磁盘,ESP在第一分区
运行前:


运行后:


2. ESP不在第一分区
运行前:


运行后:

评分

参与人数 15无忧币 +71 收起 理由
chnht + 1 很给力!
liuzhaoyzz + 5 很给力!
sd3166 + 5 很给力!
2012baijd + 5 很给力!
ql1307096 + 5
詹姆斯草 + 5 好东西
zhczf + 5 赞一个!
Xongkoro + 5 神马都是浮云
nytc006 + 5 很给力!
peterpanheaven + 5 赞一个!
zds1210 + 5 很给力!
ddianxing + 5 显示ESP分区最好的小软(没有之一,就是最棒.
hero8000 + 5 赞一个!
2012得了 + 5 很给力!
糊涂 + 5 赞一个!

查看全部评分

2#
 楼主| 发表于 2013-4-12 15:34:46 | 显示全部楼层
糊涂 发表于 2013-4-12 15:26
如果老师不解释原理,和这个文件的构成,没几个人懂得是怎么回事

当时你叫我写一个工具,不过当时我忙于升级改进一键恢复,没时间。
今天正好不忙,就抽空写了一下。
回复

使用道具 举报

3#
 楼主| 发表于 2013-4-12 15:39:46 | 显示全部楼层
糊涂 发表于 2013-4-12 15:38
64位PE下只能使用MountESP_64bit吗?

不是的,如果你的64位PE支持运行32位程序,也可以用32bit的。
回复

使用道具 举报

4#
 楼主| 发表于 2013-4-12 15:45:32 | 显示全部楼层
糊涂 发表于 2013-4-12 15:43
EXEC =!MountESP.exe
有这个提示就够了!呵呵,谢谢老师,本月还期待您的完美版ONEKEY(支持WIM)

WIM可能需要一段时间。
回复

使用道具 举报

5#
 楼主| 发表于 2013-4-12 15:47:02 | 显示全部楼层
本帖最后由 clonecd 于 2013-4-12 15:48 编辑
糊涂 发表于 2013-4-12 15:43
EXEC =!MountESP.exe
有这个提示就够了!呵呵,谢谢老师,本月还期待您的完美版ONEKEY(支持WIM)


你帮我在64位的WIN8PE测试一下,要实机测试,我没有实机。多谢。
测完了到这个帖子反馈一下。
回复

使用道具 举报

6#
 楼主| 发表于 2013-4-12 15:52:08 | 显示全部楼层
糊涂 发表于 2013-4-12 15:50
我有个假想,假如ESP分区不在首分区,会如何?

再就是,像上一位挂载ESP分区老师解决的一个问题,如果 ...


不管是不是在第一个分区都可以用本工具轻松解决。
回复

使用道具 举报

7#
 楼主| 发表于 2013-4-12 15:53:41 | 显示全部楼层
糊涂 发表于 2013-4-12 15:50
我有个假想,假如ESP分区不在首分区,会如何?

再就是,像上一位挂载ESP分区老师解决的一个问题,如果 ...


10个硬盘以下都会给你自动挂载所有硬盘上的ESP分区。
回复

使用道具 举报

8#
 楼主| 发表于 2013-4-12 16:15:46 | 显示全部楼层
本帖最后由 clonecd 于 2013-4-12 16:29 编辑
糊涂 发表于 2013-4-12 16:05
64位虚拟机与64位实机中测试成功挂载ESP分区

为什么虚拟机中我三个可见分区C、D、E,ESP挂载为G:


你虚拟机中,应该还有一个盘符,是光驱。

本工具按未被占用盘符顺序加载。
回复

使用道具 举报

9#
 楼主| 发表于 2013-4-12 18:40:09 | 显示全部楼层
2013hkwwcl 发表于 2013-4-12 18:30
支持原创工具,感谢分享,会写代码就是好啊///

PS:为啥我在win8x64下无论双击还是管理员运行都没任何反 ...

上个一楼DG的截图,ESP能挂上就是成功了。
没有提示的,此工具是给其它自动化工具、或在PE中使用的。
回复

使用道具 举报

10#
 楼主| 发表于 2013-4-12 18:52:04 | 显示全部楼层
2013hkwwcl 发表于 2013-4-12 18:48
DG里面是有盘符了,win8里面却没有,用diskpart的话win8里面能看到,这就算OK了吗?

对于自动化软件已经足够了,已经完全可用了。

你在资源管理器里之所以没有,是因为没有刷新,右键刷新一下即可。
回复

使用道具 举报

11#
 楼主| 发表于 2013-4-12 18:55:18 | 显示全部楼层
本帖最后由 clonecd 于 2013-4-12 18:56 编辑
2013hkwwcl 发表于 2013-4-12 18:53
刷新很多遍了呢。。。我重启试试看


重启盘符会自动消失的,真正的无副作用。实在懒得写刷新的代码了,目的是给自动化软件用的。
回复

使用道具 举报

12#
 楼主| 发表于 2013-4-12 19:00:05 | 显示全部楼层
本帖最后由 clonecd 于 2013-4-12 19:01 编辑
糊涂 发表于 2013-4-12 18:55
原来你是在WIN操作的

PE里有没有WINNT安装助手类?支持WIM格式那种


WIN8资源管理器中看不到,可能跟UAC有关,WIN8的权限控制得很严。

不过此工具的重要目的不是在Windows中使用,而是在PE中使用。
回复

使用道具 举报

13#
 楼主| 发表于 2013-4-12 19:14:25 | 显示全部楼层
2013hkwwcl 发表于 2013-4-12 19:09
重启一样,资源管理器看不到,不过命令行里面能看到,输入盘符能进去,还能用dir命令

那就行了,你试试看 命令行下copy一个文件,再用dir看看里面有没有。

WIN8资源管理器中看不到,可能跟UAC有关,WIN8的权限控制得很严。

不过此工具的重要目的不是在Windows中使用,而是在PE中使用。

刷新的代码等以后有时间了再写。

回复

使用道具 举报

14#
 楼主| 发表于 2013-4-12 19:22:46 | 显示全部楼层
糊涂 发表于 2013-4-12 19:18
对我来说PE能挂载才是正道,如果在WIN下手动也能挂载。。。我真想不出在WIN下显示ESP内容干嘛?呵呵

正解。
回复

使用道具 举报

15#
 楼主| 发表于 2013-4-12 19:25:12 | 显示全部楼层
2013hkwwcl 发表于 2013-4-12 19:23
应该是UAC的问题,PE里面能挂载,资源管理器也能看到,win下面用copy应该不行,用diskpart分配盘符后想打 ...


windows中连diskpart都这样没权限,那刷新的代码也没必要写了,因为写了也没意义。
回复

使用道具 举报

16#
 楼主| 发表于 2013-4-12 23:50:07 | 显示全部楼层
myBOOT 发表于 2013-4-12 23:44
不错,针对DG使用么?

不关DG的事,DG只是用来查看是否成功挂载。
回复

使用道具 举报

17#
 楼主| 发表于 2013-4-13 00:04:53 | 显示全部楼层
本帖最后由 clonecd 于 2013-4-13 00:07 编辑
2010qaqz111 发表于 2013-4-13 00:01
ESP 分区具体是如何判断的?

物理上来说它就是一个普通的 FAT 分区还是有其他标志?比如分区记录或者分区 ...


基本磁盘GPT的分区表在一般在编号为2至33扇区,注意这里说的是编号,由零开始编号。
当然这些扇区不一定都用完。MSDN上有比较详细的说明。
回复

使用道具 举报

18#
 楼主| 发表于 2013-4-13 00:18:04 | 显示全部楼层
本帖最后由 clonecd 于 2013-4-13 00:20 编辑
2010qaqz111 发表于 2013-4-13 00:11
那么如何判断一个 FAT 分区是否 ESP 分区呢?根据实际在不同的普通 FAT 上放 .efi 都能运行到来看,貌似是根 ...


与.EFI文件无关,如果你对扇区了解的话,你一看就明白了。如果不了解,我也说不清楚。
因为我真的不知道怎么说,不是三言两语就能搞定的。给你些的链接吧:
MSDN:
http://msdn.microsoft.com/en-us/ ... dware/gg463525.aspx

维基百科:
http://zh.wikipedia.org/wiki/GUI ... 6%E5%89%B2%E8%A1%A8


回复

使用道具 举报

19#
 楼主| 发表于 2013-5-2 13:45:36 | 显示全部楼层
xlinuxer 发表于 2013-4-29 06:17
呵呵,简单高效的批处理,谢谢了!!!

晕~,这个可不是批处理,而是用C/C++写的程序。仔细看一楼第一句话。
回复

使用道具 举报

20#
 楼主| 发表于 2013-5-3 23:03:35 | 显示全部楼层
本帖最后由 clonecd 于 2013-5-3 23:56 编辑
Xongkoro 发表于 2013-5-3 23:00
忘记问了,这个XP 03  WIN7 WIN8PE是通用的吧?

都在PECMD里静默调用执行或者在桌面环境下命令行执行一 ...


32位的XP本身不支持GPT的,所以挂不上的。

32位的XPE一般是替换了03的DISK.SYS的,所以认GPT磁盘。

当然,32位的XP替换了以上的文件也认GPT磁盘的,不过有一些后遗症,如记事本的状态栏无效等。

除以上问题外,通用的。只需注意32位还是64位就行了。
回复

使用道具 举报

21#
 楼主| 发表于 2013-5-5 15:40:14 | 显示全部楼层
Xongkoro 发表于 2013-5-5 14:56
应该和实际机器命令行运行差不多。

我正进WIN7 WIN8内核后,进桌面后就挂载好了,而且PE整体启动速度 ...


先找个不分级的03PE试试,如果可以挂载的话,那就是分级内核的问题。
然后再调整挂载的时机。
回复

使用道具 举报

22#
 楼主| 发表于 2013-5-5 15:45:04 | 显示全部楼层
Xongkoro 发表于 2013-5-5 14:56
应该和实际机器命令行运行差不多。

我正进WIN7 WIN8内核后,进桌面后就挂载好了,而且PE整体启动速度 ...

如果有盘符理顺,建议换成那个02-25版的盘符理顺,旧的盘符理顺不支持GPT,可能会把此盘符搞没了。

或者先不用盘符理顺试试看。
回复

使用道具 举报

23#
 楼主| 发表于 2013-5-5 15:55:07 | 显示全部楼层
hhh333 发表于 2013-5-5 14:39
这个值得加入,刚才试了一下,在正常系统中运行了一下,没有ESP的情况下大致需要1秒钟,不知存在时大概需要 ...


每多一个ESP分区,额外挂载所需时间应在20毫秒以内(主流机子)。
回复

使用道具 举报

24#
 楼主| 发表于 2013-5-5 19:24:37 | 显示全部楼层
hhh333 发表于 2013-5-5 18:40
将pecmd换成2012的那个就OK了,我刚才试出来的。

看来老的PECMD应付GPT已经力不从心了。
回复

使用道具 举报

25#
 楼主| 发表于 2013-5-6 20:57:52 | 显示全部楼层
Xongkoro 发表于 2013-5-5 19:35
十分感谢H大,刚到家,PECMD好像版本也比较多,不知道H大用的是哪个版本呢??

(忘记说了,YY的老狂 ...

PECMD2012
  http://bbs.wuyou.net/forum.php?mod=viewthread&tid=205402&extra=page%3D1
回复

使用道具 举报

26#
 楼主| 发表于 2013-6-12 08:37:45 | 显示全部楼层
zds1210 发表于 2013-6-11 16:00
这个工具比较牛,在xp极速版 下测试,都可能挂载esp分区。强。

最近有点小忙,还希望各位多多提意见和建议。

点评

嘿嘿,就等老师更新ONEKEY了!不太忙的时候。。。  发表于 2013-6-12 10:48
回复

使用道具 举报

27#
 楼主| 发表于 2014-4-15 22:26:10 | 显示全部楼层
w113124 发表于 2014-4-15 20:39
Win8.1 update1无挂载,但是电脑里出不来盘,直接打地址也不可用


此程序一般用在PE,另:你把一楼的问题解答部分看一下。

点评

嗯,忘了也可能是权限问题。不过现在的的情况和 DiskGenius 挂载一样,在 DiskGenius 里有盘符,在资源管理器里出不来。我再年看一楼,谢谢提醒  发表于 2014-4-16 09:44
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-20 14:08

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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