无忧启动论坛

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

[原创] WIN10PE连接手机(MTP支持)

  [复制链接]
1#
发表于 2018-12-22 15:07:09 来自手机 | 显示全部楼层
slore 发表于 2018-12-22 14:36
秒数不固定的问题,找了个检查方法试了下,貌似可行,不过我机器600ms后可以了,
花的时间不长,我不确定 ...

收到,有的折腾了。以前一直折腾,就是服务启动不起来,再折腾一次试试
回复

使用道具 举报

2#
发表于 2018-12-23 07:47:14 来自手机 | 显示全部楼层
slore 发表于 2018-12-23 06:25
成功的是我的hook.dll在Noel的PE下(英文截图)。他的PE源是ADK的winpe.wim而且他改造了非常多的东西,我 ...

老大,能不能方便放一个直接删除MiniNT项的补丁?

点评

只删除不创建?winpeshl.exe等程序会直接退出啊。 后续程序的话,你在PECMD中删除,效果一样。  详情 回复 发表于 2018-12-23 08:58
回复

使用道具 举报

3#
发表于 2018-12-23 09:23:10 来自手机 | 显示全部楼层
slore 发表于 2018-12-23 08:58
只删除不创建?winpeshl.exe等程序会直接退出啊。

后续程序的话,你在PECMD中删除,效果一样。

后续再删,不是有点晚了么。
pe下很多地方限制都是这个原因,想弄个这样的环境研究一些东西。

点评

是的,比如 远程访问的身份认证的对话框,PE下就是控制台模式,如果识别为非PE,共享访问和远程桌面,是弹出如下界面: [attachimg]383974[/attachimg] [attachimg]383973[/attachimg] 这类程序没保护好像  详情 回复 发表于 2018-12-23 16:52
回复

使用道具 举报

4#
发表于 2018-12-23 10:53:06 来自手机 | 显示全部楼层
本帖最后由 红毛樱木 于 2018-12-23 10:54 编辑
slore 发表于 2018-12-23 10:48
你先用32位测试吧。native cmd有个reg.exe。可以bootexecute下直接删除。wpeutil, winpeshl等会自动退出, ...


wpeutil, winpeshl退出

这个好像不是难点,前面y(手机打字,不记得大神名字了,论坛反编译高手)分析过过程,可以自己用程序实现替代。

现在还没开始折腾你提供的mtp补丁,下周折腾试试,有需求再来骚扰您

点评

你说的是yamingw大神吧?他懂反编译。  详情 回复 发表于 2019-1-2 17:21
回复

使用道具 举报

5#
发表于 2018-12-24 08:15:07 来自手机 | 显示全部楼层
slore 发表于 2018-12-24 00:31
犯了一个低级错误,少复制winusb.dll文件到system32了。

你看这样是不是更稳妥些,用你的补丁改注册表,然后补丁不改回注册表。
最后由pecmd接管的时候再改回来,这样是不是就能避免你提到的600ms延时的问题?

点评

最新的补丁是使用服务进程检查,延时的问题应该解决了,在4秒的环境也测试过了。 winlogon启动以后的进程,PECMD能接管的进程不会因为这个项导致蓝屏。重点是先删除让services.exe通过。后面创建只是还原现场,保  详情 回复 发表于 2018-12-24 09:03
回复

使用道具 举报

6#
发表于 2018-12-24 11:05:26 来自手机 | 显示全部楼层
slore 发表于 2018-12-24 09:03
最新的补丁是使用服务进程检查,延时的问题应该解决了,在4秒的环境也测试过了。

winlogon启动以后的 ...

这种方式是不是也可以顺带解决之前的WOW64破解的问题?

点评

老问题翻出来再讨论下嘛  发表于 2018-12-24 12:53
一年前的WIN10PE已经不用WOW64破解了,补充文件就行了。老的版本我不清楚。  发表于 2018-12-24 11:13
回复

使用道具 举报

7#
发表于 2018-12-24 14:20:34 | 显示全部楼层
本帖最后由 红毛樱木 于 2018-12-24 16:03 编辑

又研究了一下之前折腾的win8pe中MTP失败的情况,今天才发现之前注册表有问题,忘记添加注册表中的mtp的class类型了。Win8pe不需要破解补丁




---------------------------------------------------------------------------------
win10pe x86和x64 16299中测试,日志这样显示,最终失败
Device class {eec5ad98-8080-425f-922a-dabf3de3f69a} is not configurable.
回复

使用道具 举报

8#
发表于 2018-12-24 16:10:53 | 显示全部楼层
win10pe x86和x64 16299中测试,日志这样显示,最终失败
Device class {eec5ad98-8080-425f-922a-dabf3de3f69a} is not configurable.

是不是破解补丁的那个dll没有生效?

点评

是哪个?看不太明白。 [attachimg]384056[/attachimg]  详情 回复 发表于 2018-12-24 16:24
下载WimBuilder2最新版,然后#6的补丁解压到WIN10XPE工程目录,补上winusb*,构建一个看看。  发表于 2018-12-24 16:18
另外我的补丁是针对winre.wim的。如果用boot.wim是少几个文件的。  发表于 2018-12-24 16:17
proexp.exe, CTRL+H查看进程句柄,选择services.exe。如果APCL PORT应该有2个,第二个是UMDF相关。另外设备管理器MTP服务状态码,如果是 初始化失败47?就是DLL没成功。如果是10,是mtp驱动不对。  发表于 2018-12-24 16:16
回复

使用道具 举报

9#
发表于 2018-12-24 16:24:45 | 显示全部楼层
本帖最后由 红毛樱木 于 2018-12-24 16:27 编辑
红毛樱木 发表于 2018-12-24 16:10
win10pe x86和x64 16299中测试,日志这样显示,最终失败
Device class {eec5ad98-8080-425f-922a-dabf3de3 ...


是哪个?看不太明白。
设备管理器的错误码是19


点评

X:\Hook.dat 没有产生这个文件。 [attachimg]384063[/attachimg]  详情 回复 发表于 2018-12-24 17:36
如果没有X:\Hook.dat就是Hook.dll的注册表3项没写对。  发表于 2018-12-24 17:28
初始化失败了。ALPC Port只有一个。X:\Hook.dat的进程时间记录发下。  发表于 2018-12-24 17:27
回复

使用道具 举报

10#
发表于 2018-12-24 17:36:49 | 显示全部楼层
红毛樱木 发表于 2018-12-24 16:24
是哪个?看不太明白。
设备管理器的错误码是19

X:\Hook.dat
没有产生这个文件。

点评

总算用wimbuilder生成了,现在的状态是10,应该是成功了,也有dat文件生成。 内容如下  详情 回复 发表于 2018-12-24 22:24
我测试了一次手动把winre.wim里的文件补上也是一样的情况,明天再研究下wimbuilder  详情 回复 发表于 2018-12-24 19:39
wimbuilder下午用了一次没成功,不好意思真的是第一次用。 在win7系统下,挂载的ISO,没反应。是不是只能win10系统下用?  详情 回复 发表于 2018-12-24 19:38
我下了附件用WimBuilder2测试,对v1809(x86,x64)都可以。你的图看着OK,大小看x64的hook也对的。X:\wxsHook.dll有没有中文字符,空格?导出看看。要不就是基础wim的差别,建议你用WimBuilder2+winre.wim再确认  发表于 2018-12-24 18:50
回复

使用道具 举报

11#
发表于 2018-12-24 19:38:21 来自手机 | 显示全部楼层
红毛樱木 发表于 2018-12-24 17:36
X:\Hook.dat
没有产生这个文件。

wimbuilder下午用了一次没成功,不好意思真的是第一次用。
在win7系统下,挂载的ISO,没反应。是不是只能win10系统下用?

点评

给我说了下,你的install.wim版本,我也试试。  发表于 2018-12-24 20:29
你选择的是install.wim而不是 windows光盘的话,生成的ISO不能启动。_ISO_中的boot是空的,复制ISO模板到_ISO_,或者把_ISO_\sources\boot.wim拿出来。  发表于 2018-12-24 20:29
回复

使用道具 举报

12#
发表于 2018-12-24 19:39:23 来自手机 | 显示全部楼层
红毛樱木 发表于 2018-12-24 17:36
X:\Hook.dat
没有产生这个文件。

我测试了一次手动把winre.wim里的文件补上也是一样的情况,明天再研究下wimbuilder
回复

使用道具 举报

13#
发表于 2018-12-24 20:44:30 来自手机 | 显示全部楼层
16299就是1709
回复

使用道具 举报

14#
发表于 2018-12-24 22:24:20 | 显示全部楼层
红毛樱木 发表于 2018-12-24 17:36
X:\Hook.dat
没有产生这个文件。


总算用wimbuilder生成了,现在的状态是10,应该是成功了,也有dat文件生成。
内容如下

点评

硬盘挂了,挂的真是时候,,,明天再试了。导数据  详情 回复 发表于 2018-12-24 23:19
我下载了16299x86(小点),测试可以成功识别我的手机。估计你改动啥了导致Hook.dll加载不起来。  发表于 2018-12-24 23:18
MTP_Support\MTP_DrvSrv\main.bat第18行  发表于 2018-12-24 22:59
添加上winusb*就可以识别了。  发表于 2018-12-24 22:57
回复

使用道具 举报

15#
发表于 2018-12-24 23:19:08 来自手机 | 显示全部楼层
红毛樱木 发表于 2018-12-24 22:24
总算用wimbuilder生成了,现在的状态是10,应该是成功了,也有dat文件生成。
内容如下

硬盘挂了,挂的真是时候,,,明天再试了。导数据
回复

使用道具 举报

16#
发表于 2018-12-24 23:54:51 来自手机 | 显示全部楼层
我用wimbuilder生成的注册表替换掉我的注册表,那个dll还是没加载成功,这个依赖也太奇葩了吧。
不会是需要.net3.5的支持吧?

点评

你有测试WimBuilder2+ winusb* 生成的PE可以识别你的手机么?  发表于 2018-12-25 00:44
winre.wim不带.net组件,这个DLL没有依赖的。 直接在WimBuilder2界面选择你的boot.wim,然后,补丁把所有的钩都去掉,只保留MTP_Support看看可以不。  详情 回复 发表于 2018-12-25 00:42
回复

使用道具 举报

17#
发表于 2018-12-25 00:47:49 来自手机 | 显示全部楼层
slore 发表于 2018-12-25 00:42
winre.wim不带.net组件,这个DLL没有依赖的。

直接在WimBuilder2准备界面选择你修改过的boot.wim, ...

明天测试看看。
回复

使用道具 举报

18#
发表于 2018-12-25 10:12:14 | 显示全部楼层
slore 发表于 2018-12-25 00:42
winre.wim不带.net组件,这个DLL没有依赖的。

直接在WimBuilder2准备界面选择你修改过的boot.wim, ...

WimBuilder2准备界面选择你修改过的boot.wim,然后,补丁界面把所有的钩都去掉,只保留MTP_Support


结果无限转圈了,不能进桌面了。。。

点评

我还是用笨方法吧,手动文件对比补充测试。看看能不能找出来关键点  详情 回复 发表于 2018-12-25 10:33
啊。。。那你先试试纯winre.wim吧。  发表于 2018-12-25 10:21
回复

使用道具 举报

19#
发表于 2018-12-25 10:33:42 | 显示全部楼层
红毛樱木 发表于 2018-12-25 10:12
WimBuilder2准备界面选择你修改过的boot.wim,然后,补丁界面把所有的钩都去掉,只保留MTP_Support

我还是用笨方法吧,手动文件对比补充测试。看看能不能找出来关键点
回复

使用道具 举报

20#
发表于 2018-12-25 11:23:40 | 显示全部楼层
本帖最后由 红毛樱木 于 2018-12-25 11:25 编辑

2018-12-25 11:16:02.616
2018-12-25 11:16:02.616
0:[System Process]
4:System
460:smss.exe
564:csrss.exe
628:wininit.exe
640:csrss.exe
692:winlogon.exe
716:services.exe
724:lsass.exe
2018-12-25 11:16:03.132
0:[System Process]
4:System
460:smss.exe
564:csrss.exe
628:wininit.exe
640:csrss.exe
692:winlogon.exe
716:services.exe
724:lsass.exe
800:fontdrvhost.exe
848:svchost.exe

dat文件有了,但是设备管理器里还是错误19

回复

使用道具 举报

21#
发表于 2018-12-25 11:36:57 | 显示全部楼层
slore 发表于 2018-12-25 11:30
那就是你补充文件漏东西了。建议你用WimBuilder把winusb*加上,然后,dir /b /s对比下,文件差。
rootcat? ...

搞出来这个DAT有点曲折,我昨天手动改的WIM文件其实没有问题,今天换一个ISO外壳就出来这个DAT了,很奇葩很奇葩。

点评

BCD趨ISO  发表于 2018-12-25 12:11
回复

使用道具 举报

22#
发表于 2018-12-25 12:37:48 | 显示全部楼层
slore 发表于 2018-12-25 12:23
稍微集中精力折腾的话,好多遗留问题迎刃而解了。。。
放假休息,年后看情況,闲点儿了再折腾。

厉害了,这个状态居然出来了。
回复

使用道具 举报

23#
发表于 2018-12-25 15:02:01 | 显示全部楼层
总算搞定了,看上去还是ISO的问题。可能是我破解的BOOTMGR版本低了。

点评

最终确定是BCD的原因,你试试这样操作。 用BOOTICE编辑BCD,然后删掉默认的启动项,新建一个一样的启动项,这样启动之后就不产生那个DAT文件了。  详情 回复 发表于 2018-12-25 18:21
用WimBuilder2从零构建,不同版本(v1709, v1809, x86, x64)每次都成功。所以功能验证还是用原版的东西好,避免误导。  发表于 2018-12-25 17:20
回复

使用道具 举报

24#
发表于 2018-12-25 18:21:07 | 显示全部楼层
本帖最后由 红毛樱木 于 2018-12-25 18:28 编辑
红毛樱木 发表于 2018-12-25 15:02
总算搞定了,看上去还是ISO的问题。可能是我破解的BOOTMGR版本低了。

最终确定是BCD的原因,你试试这样操作。
用BOOTICE编辑BCD,然后删掉默认的启动项,新建一个一样的启动项,这样启动之后就不产生那个DAT文件了。
------------------------------------------------
在源BCD上修改菜单,怎么修改都没事,就是不能用BOOTICE新建的菜单引导。

点评

用bootice高级模式里的复制菜单,没问题。 把所有bcd都重新做了一遍  详情 回复 发表于 2018-12-25 23:10
也可能是BOOTICE的BUG,默认新建的项目,新系统缺省项目不足。系统的bcdedit的话应该没问题。  发表于 2018-12-25 19:36
你说ISO的问题,就猜测是BCD的问题了, 手机 回复 乱码了 BCD趨ISO 发表于 7 小时前 应该是BCD有什么选项缺少影响到了吧,启动这块我也不清楚,BOOTICE就是改改路径。  发表于 2018-12-25 19:35
回复

使用道具 举报

25#
发表于 2018-12-25 23:10:51 来自手机 | 显示全部楼层
红毛樱木 发表于 2018-12-25 18:21
最终确定是BCD的原因,你试试这样操作。
用BOOTICE编辑BCD,然后删掉默认的启动项,新建一个一样的启动 ...

用bootice高级模式里的复制菜单,没问题。
把所有bcd都重新做了一遍
回复

使用道具 举报

26#
发表于 2018-12-31 15:53:01 来自手机 | 显示全部楼层
caocaofff 发表于 2018-12-31 15:28
楼主也来看看我这个是咋回事?
是按照附件里的批处理添加了文件和注册表,然后是现在这个样子。。

卸载一下,在刷新试试
回复

使用道具 举报

27#
发表于 2019-1-2 16:46:44 | 显示全部楼层
caocaofff 发表于 2019-1-2 16:10
这次重新添加,驱动貌似正常了,但为啥手机开了传输照片却没在资源管理器找到?

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\DelegateFolders

补全下面的所有注册表试试,然后里面有几个CLSID

点评

OK,已经成功显示哈哈 多谢红毛兄  详情 回复 发表于 2019-1-2 17:04
回复

使用道具 举报

28#
发表于 2019-1-11 15:26:56 | 显示全部楼层
本帖最后由 红毛樱木 于 2019-1-11 15:31 编辑

发现一个问题,用了这个补丁之后,好像PE的默认字体变成宋体了,而不是微软雅黑了。不知道为什么。


反正就是字体不是原来的字体了,不一样了。是不是影响了Font开头的那个进程初始化字体了?

点评

[attachimg]385638[/attachimg] [attachimg]385639[/attachimg] WimBuilder2对winre.wim 基础上加MMC,然后带MTP支持,和不带MTP支持对比: 显示内容字体没有区别。 如果有变化,应该不是这个补丁影响的。  详情 回复 发表于 2019-1-13 13:54
回复

使用道具 举报

29#
发表于 2019-1-13 13:57:20 来自手机 | 显示全部楼层
slore 发表于 2019-1-13 13:54
WimBuilder2对winre.wim 基础上加MMC,然后带MTP支持,和不带MTP支持对比:
显示内容字体没有区别 ...

我就把这个dll删掉之后自己就正常了

点评

和初始化順序有关?我再选下explorer外壳生成看看。  发表于 2019-1-13 13:59
回复

使用道具 举报

30#
发表于 2019-1-13 14:23:05 | 显示全部楼层
slore 发表于 2019-1-13 14:05
选择 explorer.exe +StartIsBack + MMC + MTP 支持重新构建, 字体也没啥变化。


http://up.usbrun.com/USM1PE8F.WIM

补丁文件是\windows\wxsHook.dll

无补丁的,



有补丁的

点评

main.bat 用WimBuilder2生成新的BOOTPE.ISO结果如图,没有字体问题。 要么是和之前一样你的启动ISO模板的BOOT\BCD有什么区别,要么就是你的“加载外置”的脚本在外置存在的时候, 有地方对字体进行了影  详情 回复 发表于 2019-1-13 15:00
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-26 00:48

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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