无忧启动论坛

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

[原创] 自动理顺盘符搜索petools-已开源

    [复制链接]
发表于 2016-11-13 15:28:51 | 显示全部楼层 |阅读模式
本帖最后由 haijie1223 于 2016-11-20 10:37 编辑

感谢 Geeker,kcyou帮忙测试!应两位要求,已开源!程序可能会导致系统引导异常!请在PE下运行!
一、简介:
无耐看不懂批处理,只好自己写了个脚本。
1、自动理顺盘符,B、X、Y、Z这些盘符经常做临时盘使用,所以不参与排序。
2、盘符排序顺序,硬盘盘符,光驱盘符,U盘盘符。

3、理顺盘符后自动搜索各个分区下的petools文件夹并创建快捷方式到开始菜单。


本想添加自动搜索UD区功能,由于还需要调用fbinst,还不如写配置文件来的方便。
写工具的目的就是不想依赖第三方工具,所以程序可独立运行,不必依赖于pecmd或者fbinst,在系统和PE下均可使用。

调用方法:和批处理一样,直接调用运行即可。


二、代码开源:AU3脚本编写

理顺盘符加载petools.7z (1.81 KB, 下载次数: 570)

评分

参与人数 7无忧币 +35 收起 理由
chshrm + 5 很给力!
wuxin9712 + 5
wjguowei + 5 赞一个!
fcurrk + 5 很给力!
baosheng00 + 5 赞一个!
kcyou + 5 赞一个!
freesoft00 + 5

查看全部评分

发表于 2016-11-13 15:48:10 | 显示全部楼层
pecmd就可以搜尋各分partition並執行指令啦
FORX指令

点评

多谢指点,不会用~  详情 回复 发表于 2016-11-13 16:06
回复

使用道具 举报

 楼主| 发表于 2016-11-13 16:06:12 | 显示全部楼层
saiz 发表于 2016-11-13 15:48
pecmd就可以搜尋各分partition並執行指令啦
FORX指令

多谢指点,不会用~

点评

可直接執行PECMD 找FORX指令看 以我的指令為例 FORX /S !\outtool\8Driver\SRS\*.inf,SRS,0,DEVI %SRS% 即逆向搜尋所有磁碟分區下\outtool\8Driver\SRS\(含子目錄)的所有INF檔 每找到一個後就設為SRS變數,並執行  详情 回复 发表于 2016-11-17 13:37
回复

使用道具 举报

 楼主| 发表于 2016-11-13 21:40:56 | 显示全部楼层
立马更新一次
回复

使用道具 举报

发表于 2016-11-14 14:06:45 | 显示全部楼层
可以自动理顺同一个硬盘里不同分区的盘符顺序吗?我经常使用电脑店、大白菜等的PE,有时进入PE后,C、D、E盘并不能按顺序排列,1.1为E,1.2为D,1.3为C,但是正确的要1.1为C,1.2为D,1.3为E,我用PE里的磁盘理顺工具理顺,也不见有效果,不知道是不是只理顺硬盘、光驱、U盘的盘符顺序,而不理顺同一硬盘下的不同分区顺序,因为我自己会运行一些批处理来处理一些东西,而代码是按照系统盘为C盘,D盘为用户的D盘,U盘为U:\,所有我一般是在DiskGenius里手动指派新的盘符,需求:1、把系统里第一块硬盘里大于20G(确保为系统盘)且靠前面的分区指派为C,该硬盘其它分区按物理位置依次顺序排列,2、U盘指派为U:\,有其它U盘的依次往后排列,V、W、……,3、移动硬盘紧接着系统里的CDE盘的后面

点评

打开系统自带的磁盘管理器,最上面的一块硬盘第一个分区是C,依次往后排序。然后是第二个硬盘。。。然后是光驱,然后是U盘。 你可以试试。试过了什么效果,麻烦跟帖反馈一下。  详情 回复 发表于 2016-11-14 14:26
回复

使用道具 举报

 楼主| 发表于 2016-11-14 14:26:52 | 显示全部楼层
Geeker 发表于 2016-11-14 14:06
可以自动理顺同一个硬盘里不同分区的盘符顺序吗?我经常使用电脑店、大白菜等的PE,有时进入PE后,C、D、E ...

打开系统自带的磁盘管理器,最上面的一块硬盘第一个分区是C,依次往后排序。然后是第二个硬盘。。。然后是光驱,然后是U盘。
你可以试试。试过了什么效果,麻烦跟帖反馈一下。
回复

使用道具 举报

发表于 2016-11-15 00:34:15 | 显示全部楼层
haijie1223 发表于 2016-11-14 14:26
打开系统自带的磁盘管理器,最上面的一块硬盘第一个分区是C,依次往后排序。然后是第二个硬盘。。。然后 ...

现在的PE一般在启动时估计都会理顺一次盘符,一般来说刚进入PE时,盘符顺序都是正确的,比较觉的是使用DiskGenius分区工具快速分区后,自动分配的盘符,经常会不按物理位置顺序排列,而使用PE内置的软件(开始--所有程序--再次理顺磁盘盘符)也无法理顺盘符,必须要在DiskGenius里手动指派新的驱动器号来解决,这样耗时又麻烦;
由于进入PE后盘符顺序一般是正常的,所以为了测试效果我在DiskGenius里手动随机几个不分区为不同的盘符,把物理位置靠前的分区盘符靠后,使用PE内置的软件理顺盘符,多次使用都没有任何的改变,感觉这个软件就是骗人的;使用楼主的petools根本无法运行,不管是电脑店PE还是在大白菜PE,以管理员身份运行也一样的出错;
在Win10X64系统(非PE,Uefi+GPT模式)下打开软件没有任何窗口或提示,以管理员身份运行也一样,且没有理顺盘符。
测试环境:Thinkpad T430,Uefi启动模式,Win8PEX64,电脑里有两块硬盘,一块为GPT分区,一块为MBR分区,PE里cmd中显示的版本Microsoft Windows [版本 6.2.9200];
使用的PE都是在2016年10月下旬从各自官网下载并制作的PE,到现在应该都是最新版的;
由于本人使用Win8PE较多,所以也没去测试在Win8X86、2003X64、2003X86、XP等PE环境下软件是否正常
sshot-2016-11-15-[00-03-07].png
sshot-2016-11-15-[00-09-12]DBCPE.png

点评

多谢反馈,已更新!  详情 回复 发表于 2016-11-15 18:19
回复

使用道具 举报

 楼主| 发表于 2016-11-15 18:19:43 | 显示全部楼层
Geeker 发表于 2016-11-15 00:34
现在的PE一般在启动时估计都会理顺一次盘符,一般来说刚进入PE时,盘符顺序都是正确的,比较觉的是使用Di ...

多谢反馈,已更新!
回复

使用道具 举报

发表于 2016-11-15 18:52:44 | 显示全部楼层
支持一下,有时间做下测试。
回复

使用道具 举报

发表于 2016-11-15 21:08:14 | 显示全部楼层
这个昨天 才整理好我的PE,没有耐心帮你测试了.

点评

可能原来编译有点问题,更新了  详情 回复 发表于 2016-11-15 21:31

评分

参与人数 1无忧币 +3 收起 理由
haijie1223 + 3 多谢帮忙测试!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-11-15 21:31:51 | 显示全部楼层
slyneo 发表于 2016-11-15 21:08
这个昨天 才整理好我的PE,没有耐心帮你测试了.

可能原来编译有点问题,更新了
回复

使用道具 举报

发表于 2016-11-15 22:11:42 | 显示全部楼层
haijie1223 发表于 2016-11-15 18:19
多谢反馈,已更新!

刚下载测试了一下,还是会有问题,下面的图片是在电脑点Win8X64PE下的,在Win10X64系统下也是一样的错误信息,也没有理顺盘符;
测试环境跟之前的是一样的。
sshot-2016-11-15-[22-05-50].png
sshot-2016-11-15-[22-05-11].png

点评

再次更新,欢迎测试!  详情 回复 发表于 2016-11-16 11:14

评分

参与人数 1无忧币 +5 收起 理由
haijie1223 + 5 多谢测试!确实是代码错误,再次感谢!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-11-16 11:14:19 | 显示全部楼层
Geeker 发表于 2016-11-15 22:11
刚下载测试了一下,还是会有问题,下面的图片是在电脑点Win8X64PE下的,在Win10X64系统下也是一样的错误 ...

再次更新,欢迎测试!

点评

在电脑店Win8X64PE下,第一块硬盘调整后的盘符为D、C,把C、D分配给了第一块硬盘,但是同一块硬盘内却没有按位置排列,1.1为D,1.2为C了; 第二块硬盘为MBR分区表的(第一分区为主分区,其它为逻辑分区),调整前按  详情 回复 发表于 2016-11-17 00:53
回复

使用道具 举报

发表于 2016-11-17 00:53:18 | 显示全部楼层
haijie1223 发表于 2016-11-16 11:14
再次更新,欢迎测试!

在电脑店Win8X64PE下,第一块硬盘调整后的盘符为D、C,把C、D分配给了第一块硬盘,但是同一块硬盘内却没有按位置排列,1.1为D,1.2为C了;
第二块硬盘为MBR分区表的(第一分区为主分区,其它为逻辑分区),调整前按物理位置盘符如下j f k l h g,调整后为j g k l i h;
在win10X64系统下,第一次运行没有任何的反应,且资源管理器窗口无响应,鼠标点不了,进程重启后正常,再次打开程序,没有问题,
第二块硬盘在调整前的盘符顺序n l g h i j,调整后的盘符顺序j i e f g h。
同一硬盘里不同分区并不能按物理顺序来理顺排序,该程序已没有运行错误(Win10首次打开使资源管理器无响应也话有些问题),但程序的执行流程、逻辑思路、细节应稍加改进,以达到效果。

点评

多谢测试!再次更新!  详情 回复 发表于 2016-11-17 15:42
感谢测试,大体知道问题出在哪里了。看来语言再改改。  详情 回复 发表于 2016-11-17 07:53
回复

使用道具 举报

发表于 2016-11-17 00:57:59 | 显示全部楼层
楼主发个不需要搜索petools目录的,需要直接整理盘符就可以

点评

更新了,附件里面两个文件,有一个是你需要的。  详情 回复 发表于 2016-11-17 15:43
回复

使用道具 举报

 楼主| 发表于 2016-11-17 07:53:28 | 显示全部楼层
Geeker 发表于 2016-11-17 00:53
在电脑店Win8X64PE下,第一块硬盘调整后的盘符为D、C,把C、D分配给了第一块硬盘,但是同一块硬盘内却没 ...

感谢测试,大体知道问题出在哪里了。看来语言再改改。
回复

使用道具 举报

发表于 2016-11-17 13:37:25 | 显示全部楼层
haijie1223 发表于 2016-11-13 16:06
多谢指点,不会用~

可直接執行PECMD 找FORX指令看
以我的指令為例
FORX /S !\outtool\8Driver\SRS\*.inf,SRS,0,DEVI %SRS%
即逆向搜尋所有磁碟分區下\outtool\8Driver\SRS\(含子目錄)的所有INF檔
每找到一個後就設為SRS變數,並執行DEVI %SRS,以載入驅動

点评

感谢指点!收藏一下!  详情 回复 发表于 2016-11-17 15:43
回复

使用道具 举报

 楼主| 发表于 2016-11-17 15:42:48 | 显示全部楼层
Geeker 发表于 2016-11-17 00:53
在电脑店Win8X64PE下,第一块硬盘调整后的盘符为D、C,把C、D分配给了第一块硬盘,但是同一块硬盘内却没 ...

多谢测试!再次更新!

点评

下载测试了一下,结果如下: Win8X64电脑店PE环境: 理顺前第一块硬盘盘符顺序:i d,第二块硬盘盘符顺序:k j g h f e,U盘盘符:c; 理顺后第一块硬盘盘符顺序:e f,第二块硬盘盘符顺序:g h i j k nul,U盘盘  详情 回复 发表于 2016-11-18 00:57
回复

使用道具 举报

 楼主| 发表于 2016-11-17 15:43:22 | 显示全部楼层
baosheng00 发表于 2016-11-17 00:57
楼主发个不需要搜索petools目录的,需要直接整理盘符就可以

更新了,附件里面两个文件,有一个是你需要的。
回复

使用道具 举报

 楼主| 发表于 2016-11-17 15:43:37 | 显示全部楼层
saiz 发表于 2016-11-17 13:37
可直接執行PECMD 找FORX指令看
以我的指令為例
FORX /S !\outtool\8Driver\SRS\*.inf,SRS,0,DEVI %SRS% ...

感谢指点!收藏一下!
回复

使用道具 举报

发表于 2016-11-18 00:57:59 | 显示全部楼层
haijie1223 发表于 2016-11-17 15:42
多谢测试!再次更新!

下载测试了一下,结果如下:
Win8X64电脑店PE环境:
理顺前第一块硬盘盘符顺序:i d,第二块硬盘盘符顺序:k j g h f e,U盘盘符:c;
理顺后第一块硬盘盘符顺序:e f,第二块硬盘盘符顺序:g h i j k nul,U盘盘符:n;
PE下运行情况分析:1、在gpt硬盘分区表下,第一块硬盘的esp分区一开始就被分配了l盘符,msr分区被分配了m盘符,petools运行后分配到了k盘符,下一个要分配的盘符理应为l,但l、m都被占用了,所以删除盘符后分配盘符失败,导致k分区后面的盘符未能成功分配,建议:分配盘符前再次检测确认该盘符是否未被分配,直到找到下一个可用盘符;
2、在理顺前,C、D盘符都是有被分配的,而在理顺后直接从字母E开始了,而不是从C开始,建议:第一块硬盘第一分区以C作为盘符并依次往后,各个盘符的指派过程可以间隔1~2S或更久的延时,从DiskGenius的快速分区的过程来看,先新建各分区、格式化各分区、指派盘符给各分区,指派盘符时也是需要一定时间的;

win10X64系统环境:
第二块硬盘理顺前盘符顺序:j i e f g h,
第二块硬盘理顺后盘符顺序:e f g h i j,
在Win10系统下,第一次打开软件,运行后没有任何提示或反应,鼠标会转圈,点击资源管理器窗口任何地方无法点击,在任务管理器中重启资源管理器进程后正常,
再次打开程序,运行正常,但没有理顺盘符,多交运行后,可以理顺盘符;
Win10X64环境分析:还不太稳定,第一次运行会造成资源管理假死,且需要多次运行后才有效果。

点评

感谢测试,再次更新。 经过测试,确实是我说的那种情况,因为esp和msr没有挂载点,我的程序不能将他们设置成新的盘符,他们所占用的盘符也不能被别的盘设置。目前是将没法挂载的分区直接跳出去,继续设置。后面研究  详情 回复 发表于 2016-11-18 20:28
感谢测试,通过你的反馈,我想情况应该是这样的。 esp,msr 两个分区,软件应该是把他们排到c,d的。然后后面的依次往后排就对了。 但是可能不知什么原因,esp msr删除盘符后,还占用了原来的 l m 的位置,重新  详情 回复 发表于 2016-11-18 07:39
回复

使用道具 举报

 楼主| 发表于 2016-11-18 07:39:30 | 显示全部楼层
Geeker 发表于 2016-11-18 00:57
下载测试了一下,结果如下:
Win8X64电脑店PE环境:
理顺前第一块硬盘盘符顺序:i d,第二块硬盘盘符顺 ...

感谢测试,通过你的反馈,我想情况应该是这样的。

esp,msr 两个分区,软件应该是把他们排到c,d的。然后后面的依次往后排就对了。
但是可能不知什么原因,esp msr删除盘符后,还占用了原来的 l  m 的位置,重新分配c d时失败,
而别的盘分配l m 也失败。应该是如此。

看来我得找个类似的环境测试一下。不然这样没有实际环境的更新,不容易发现问题所在。


再次感谢!
回复

使用道具 举报

发表于 2016-11-18 15:42:52 | 显示全部楼层
本帖最后由 kcyou 于 2016-11-18 15:44 编辑

盘符整理测试如下:
用imdisk创建的虚拟磁盘RAMDISK盘符没有整理。
硬盘CDEF四个分区,光盘G,插入U盘显示为H盘,再查第二个U盘显示为I,整理后无变化。
拔出第二U盘,用IMDISK创建RAMDISK,盘符为I,整理后也无变化,正常。
再拔出U盘H,整理后虚拟盘I无变化,缺H盘符;
再插入U盘,显示为盘符H,虚拟盘符为I,整理后无变化;
再插入第二U盘,则整理后第二U盘不能显示。
1.jpg
2.jpg
3.jpg

点评

感谢测试,只整理本地磁盘,虚拟磁盘应该是不参与操作。  详情 回复 发表于 2016-11-18 17:40
回复

使用道具 举报

发表于 2016-11-18 16:07:22 | 显示全部楼层
本帖最后由 kcyou 于 2016-11-18 16:09 编辑

虚拟盘符不整理没事儿,但第二个U盘盘符不显示。
victor888盘符整理orderdrv-2013-06-23正常;
PECMD2012示例里的ORDERUSB.wcs整理也正常;
而DOS时代菜鸟的orderx3.5整理后虚拟磁盘没有了(整理中卸载了所有磁盘)

以上大师的作品代码开源,且经过坛友广泛测试反馈。

而楼主作品代码是加密的,不知什么意思???

点评

弱弱的问一句,不开源是不是会得罪人啊  详情 回复 发表于 2016-11-18 17:41
回复

使用道具 举报

 楼主| 发表于 2016-11-18 17:40:26 | 显示全部楼层
kcyou 发表于 2016-11-18 15:42
盘符整理测试如下:
用imdisk创建的虚拟磁盘RAMDISK盘符没有整理。
硬盘CDEF四个分区,光盘G,插入U盘显 ...

感谢测试,只整理本地磁盘,虚拟磁盘应该是不参与操作。
回复

使用道具 举报

 楼主| 发表于 2016-11-18 17:41:53 | 显示全部楼层
kcyou 发表于 2016-11-18 16:07
虚拟盘符不整理没事儿,但第二个U盘盘符不显示。
victor888盘符整理orderdrv-2013-06-23正常;
PECMD2012 ...

弱弱的问一句,不开源是不是会得罪人啊
回复

使用道具 举报

发表于 2016-11-18 19:48:48 | 显示全部楼层
等楼主的这个成熟了再下载.辛苦了.

点评

成熟了直接开源了~  详情 回复 发表于 2016-11-18 20:24
回复

使用道具 举报

 楼主| 发表于 2016-11-18 20:24:30 | 显示全部楼层
slyneo 发表于 2016-11-18 19:48
等楼主的这个成熟了再下载.辛苦了.

成熟了直接开源了~
回复

使用道具 举报

 楼主| 发表于 2016-11-18 20:28:40 | 显示全部楼层
Geeker 发表于 2016-11-18 00:57
下载测试了一下,结果如下:
Win8X64电脑店PE环境:
理顺前第一块硬盘盘符顺序:i d,第二块硬盘盘符顺 ...

感谢测试,再次更新。
经过测试,确实是我说的那种情况,因为esp和msr没有挂载点,我的程序不能将他们设置成新的盘符,他们所占用的盘符也不能被别的盘设置。目前是将没法挂载的分区直接跳出去,继续设置。后面研究一下没有挂载点的分区如何设置。

点评

再次测试了一下,这次这是比较不错的,这个软件会加入到我的U盘工具中(我的工具\磁盘光盘\),后续有更新和完善及时公布; 本次测试结果如下: 电脑店Win8X64PE,UEFI启动: 未理顺前第一块硬盘盘符:k j,理顺后  详情 回复 发表于 2016-11-19 21:49
回复

使用道具 举报

发表于 2016-11-19 16:44:10 来自手机 | 显示全部楼层
支持老大经常更新!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 07:01

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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