无忧启动论坛

标题: 手把手一起做WIN10维护PE,有渔也有鱼 [打印本页]

作者: slore    时间: 2016-7-6 22:39
标题: 手把手一起做WIN10维护PE,有渔也有鱼
本帖最后由 slore 于 2016-8-30 21:36 编辑

----------------------------------------------------------------------
XP时代之后的PE都太大了,就没有自己编辑过PE了,拿来主义很省事。
最近做了个WIM构建框架,发现编辑起来比想象中容易很多,
这个帖子将在boot.wim的基础上,一步步补充我想要的功能。
并给出这些功能的PATCH目录。
希望各位可以更加了解WIM_Builder的设计和用法,最最主要的是
抛砖引玉,希望大家可以分享PE修改PATCH。
----------------------------------------------------------------------

首先,列出一个维护PE,我想要的功能。



除了网络,boot.wim基本上满足了维护要用的基本功能(cmd/diskpart)。

访问文件系统,我们可以打开“记事本”-> 文件 -> 打开文件,进行选择。
但是仍有不方便的地方。



第一步,方便文件操作,任务切换,我们先加入个简单的SHELL+文件资源管理器吧。
shell的选择:bblean,EmergeDesktop,PExlorer等。
文件资源管理器:explorer.exe++,XYplorer等。

这里我用PExlorer.exe,因为直接运行就可以,方便,也不用集成到内核。
以下是PExlorer的补丁。



  1. PExlorer
  2. |   DEL_FILES.txt  <- 内容为:Windows\System32\WallpaperHost.exe
  3. |   LAST.bat
  4. |
  5. \---X
  6.     \---Windows
  7.         \---System32
  8.                 PExlorer.jcfg
  9.                 PExlorer_x64.exe
  10.                 PExlorer_x86.exe
  11.                 wallpaper.jpg
复制代码


LAST.bat

  1. if "%PB_PE_ARCH%"=="x64" (
  2.   del X:\Windows\System32\PExlorer_x86.exe
  3. ) else (
  4.   del X:\Windows\System32\PExlorer_x64.exe
  5. )
  6. ren X:\Windows\System32\PExlorer_%PB_PE_ARCH%.exe PExlorer.exe

复制代码

这个PATCH运行的话,会复制PExlorer到System32下,并删除掉内核的WallpaperHost.exe,
LAST批处理会根据内核体系结构删除掉无用的文件并改名对应x86/x64版本的为PExlorer.exe

如果只这样我们构建出来的boot.wim还是启动到系统安装界面,
光加入文件不行,boot.wim的启动对象我们也改改。

boot.wim的启动顺序简单如下:
winpeshl.exe -> wallpaperhost.exe (不使用PExlorer的话,这个程序不删除,会被winpeshl.exe调起来,显示壁纸)
             -> winpeshl.ini
             -> setup.exe
             -> startnet.cmd (不存在setup.exe, winpeshl.ini)

所以我们写个启动PATCH。


  1. PE_Startup
  2. |   INIT.bat         <- 复制startnet.cmd到System32下,复制PEconfig到X盘根目录
  3. |   DEL_FILES.txt    <- 内容为:setup.exe
  4. |   startnet.cmd     <- wpeinit.exe后调用X:\PEConfig\INIT.bat
  5. |
  6. \---PEConfig
  7.         INIT.bat     <- 启动处理
复制代码


PEConfig\INIT.bat

  1. rem add for PExlorer.exe
  2. if exist X:\Windows\System32\WallpaperHost.exe (
  3.   taskkill /f /im WallpaperHost.exe
  4. )
  5. set USERPROFILE=X:\Users\Default
  6. start PExlorer.exe -winpe
复制代码



运行WIM_Builder构建启动镜像,此时我们应该看到桌面和一个命令提示符画面了。
但是此时按WIN+E不能打开我的电脑,因为PExlorer使用的是高版本的“文件打开对话框”模拟
文件资源管理器操作,记事本这种可以使用低版本“文件打开对话框”外,系统的
任务管理器,WIN+R运行的浏览按钮是无法使用的。

这里有2个方向,第一,使用explorer.exe++之类的第3方程序(走这条路太没意思了),
第二,我们来研究下如何使PE可以使用新版的“文件打开对话框”。

=================================================================================
后续的PATCH及更新会上传到以下地址
链接: http://pan.baidu.com/s/1kVwbKOZ 密码: k6ut (2016/08/30补链接)
无特殊说明,提供的PATCH为通用补丁,应该不限体系结构(x86/x64),不限语言,不限系统版本,适当修改config.ini进行构建
=================================================================================

作者: slore    时间: 2016-7-6 22:39
本帖最后由 slore 于 2016-7-7 21:46 编辑

第一个内核PATCH---文件打开对话框(NewFileOpenDlg)

渔:
如何知道内核需要补充那些文件?

a.论坛搜索,互联网搜索
——没找到。(懒不了了-。-)

b.是否是未解决问题
NO,是个PE任务管理器都可以打开浏览窗口。

OK,那我们来偷吧。

找一个此功能有效PE(假设叫OKPE.wim),获取System32的文件列表,
和boot.wim的System32比较,看看都加了什么文件。

例如:

  1. apphelp.dll
  2. audiodg.exe
  3. AudioEng.dll
  4. ...
  5. ExplorerFrame.dll
  6. ...
  7. PECMD.exe
  8. ...
  9. wlandlg.dll
  10. WLanConn.dll
  11. ...
复制代码


我找的带这个功能的是有声音和网络功能的,所以列表下来100+,头疼。。。

WIM_Builder新建一个工程:FileOpenDlg
config.ini中配置基础PE文件为OKPE.wim

建立一个DEL_FILES.txt,记录上述文件列表,补足路径并开头加分号。

  1. ;Windows\System32\apphelp.dll
  2. ;Windows\System32\audiodg.exe
  3. ;Windows\System32\AudioEng.dll
  4. ...
  5. ;Windows\System32\ExplorerFrame.dll
  6. ...
  7. ;Windows\System32\PECMD.exe
  8. ...
  9. ;Windows\System32\wlandlg.dll
  10. ;Windows\System32\WLanConn.dll
  11. ...
复制代码


把自己知道的肯定和这个功能没关系的文件前面的分号去掉。

保存,构建,测试功能是否有效。

有效,这些文件删除不影响我们要的功能,去掉分号的号移动到文件末尾(记得住,不移动也行)

无效的话,自己判断失误,有必要文件被删除了,通过加分号保留,再构建,来确定。

固态硬盘上,基本上30秒可以构建一次,20~30个文件左右后,大概1小时可以确定出来必要文件了。

鱼1:
经过不断尝试,得出了新版打开文件对话框需要的文件列表如下:

NewOpenDlg:
ADD_ITEMS.txt

  1. Windows\System32\ExplorerFrame.dll
  2. Windows\System32\shellstyle.dll
  3. Windows\System32\StructuredQuery.dll

  4. ;some version of WIN10 need this file,
  5. ;some version will broke if have this file.
  6. Windows\System32\edputil.dll
复制代码


注意:如文件列表的注释,有的内核需要edputil.dll否则错误,有的则不能存在edputil.dll否则错误。
     10586需要此文件,10240不需要此文件,默认PATCH会改名为edputil_dll替换到内核,如果错误,
     可能内核中运行ren edputil_dll edputil.dll来,把这个PATCH放到我们的MaintPE工程下面吧。

构建,运行,WIN+E
...
...
...
没有反映,任务管理器,新建,浏览
...
...
...
仍然没有反映。

好吧,看来这个机能只加文件是不行的,应该还缺注册表。
那么问题来了,
如何知道内核需要补充那部分注册表信息呢?

a.论坛搜索,互联网搜索
——没找到。(懒不了了-。-)

b.是否是未解决问题
NO,是个PE任务管理器都可以打开浏览窗口。

好吧,那么这个能运行的PE的差分我们搞出来就好了吧,
确实是的,但是内容太多了,差分作为我们后续手段吧。

一个dll一般会在注册表的CLSID中注册,并有文件位置信息,
我们在能运行的PE或者正常系统下搜素上面补充的几个DLL试试。


哈哈,狗屎运(后面测试通过咯),只要补充ExplorerFrame.dll的注册表项目就可以了。



鱼2:
完整的文件打开对话框(NewFileOpenDlg)PATCH

NewOpenDlg:
ADD_ITEMS.txt

  1. Windows\System32\ExplorerFrame.dll
  2. Windows\System32\shellstyle.dll
  3. Windows\System32\StructuredQuery.dll

  4. ;some version of WIN10 need this file,
  5. ;some version will broke if have this file.
  6. Windows\System32\edputil.dll
复制代码


NewOpenDlg.reg

  1. Windows Registry Editor Version 5.00

  2. ;explorerframe.dll
  3. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{056440FD-8568-48e7-A632-72157243B55B}]
  4. @="Explorer Navigation Bar"
  5. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{056440FD-8568-48e7-A632-72157243B55B}\InProcServer32]
  6. @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  7.   00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,65,00,78,00,\
  8.   70,00,6c,00,6f,00,72,00,65,00,72,00,66,00,72,00,61,00,6d,00,65,00,2e,00,64,\
  9.   00,6c,00,6c,00,00,00
  10. "ThreadingModel"="Apartment"

  11. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{AE054212-3535-4430-83ED-D501AA6680E6}]
  12. @="Shell Name Space ListView"
  13. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{AE054212-3535-4430-83ED-D501AA6680E6}\InProcServer32]
  14. @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  15.   00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,65,00,78,00,\
  16.   70,00,6c,00,6f,00,72,00,65,00,72,00,66,00,72,00,61,00,6d,00,65,00,2e,00,64,\
  17.   00,6c,00,6c,00,00,00
  18. "ThreadingModel"="Apartment"
  19. ;@="X:\\Windows\\system32\\explorerframe.dll"
复制代码


来,把这个PATCH放到我们的MaintPE工程下面吧。
构建,运行,WIN+E,OK可以看到我的电脑的内容了。


补充:
修改我的电脑打开默认内容

中间不显示用户文件夹
NoUserFolders.reg

  1. Windows Registry Editor Version 5.00

  2. ;remove Downloads
  3. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{088e3905-0323-4b02-9826-5d99428e115f}]
  4. ;remove Pictures
  5. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{24ad3ad4-a569-4530-98e1-ab02f9417aa8}]
  6. ;remove Music
  7. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{3dfdf296-dbec-4fb4-81d1-6a3438bcf4de}]
  8. ;remove Documents
  9. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{d3162b92-9365-467a-956b-92703aca08af}]
  10. ;remove Videos
  11. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}]
  12. ;remove Destop
  13. [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}]
复制代码


左侧快速访问:
PE下修改好后,复制以下文件:
X:\Users\Default\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations\f01b4d95cf55d32a.automaticDestinations-ms

PEConfig\INIT.bat添加2行导入注册表和复制文件的命令即可。
效果如图:


作者: slore    时间: 2016-7-6 22:41
本帖最后由 slore 于 2016-7-7 15:49 编辑

文件拖拽功能




注意:Windows 10之前的boot.wim(例如:Win8.1)本来就可以拖拽可跳过此楼PATCH。

如法炮制,我们可以得到图标拖拽需要的文件列表如下:

  1. Windows\System32\d3d11.dll
  2. Windows\System32\DataExchange.dll
  3. Windows\System32\dcomp.dll
  4. Windows\System32\dxgi.dll
  5. Windows\System32\ksuser.dll
复制代码


做一个ADD_ITEMS.txt试试加到我们的MaintPE中。
...
...
...
果然不能用还得加点注册表料啊。

老方法搜索添加的dll文件名,发现同样CLSID下面有DataExchange.dll的定义,
我们加下注册表。

DragAndDrop.reg

  1. Windows Registry Editor Version 5.00

  2. ;dataexchange.dll
  3. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{9FC8E510-A27C-4B3B-B9A3-BF65F00256A8}]
  4. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{9FC8E510-A27C-4B3B-B9A3-BF65F00256A8}\InProcServer32]
  5. @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  6.   00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,64,00,61,00,\
  7.   74,00,61,00,65,00,78,00,63,00,68,00,61,00,6e,00,67,00,65,00,2e,00,64,00,6c,\
  8.   00,6c,00,00,00
  9. "ThreadingModel"="Both"
复制代码


再构建,测试,发现还不行。
考虑是否地方要引用这个CLSID,我们搜索下:
{9FC8E510-A27C-4B3B-B9A3-BF65F00256A8}

bingo!补充下面项目即可。

  1. ;need update ACL rights for offline importing.
  2. ;or you can add this on WinPE startup.
  3. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\Extensions]
  4. "DragDropExtension"="{9FC8E510-A27C-4B3B-B9A3-BF65F00256A8}"
复制代码


注意:如注释所述,此项目离线导入是需要更新权限,
     此项目进入PE导入也可以生效。

MaintPE就是在PEConfig\INIT.bat导入此项目。

作者: slore    时间: 2016-7-6 22:41
本帖最后由 slore 于 2016-7-7 22:03 编辑

文件/文件夹属性显示


如法炮制,我们可以得到查看文件属性列表如下:

  1. Windows\System32\actxprxy.dll
  2. Windows\System32\apphelp.dll
  3. ;need for "security" tab
  4. Windows\System32\rshx32.dll
复制代码


做一个ADD_ITEMS.txt试试加到我们的MaintPE中。
...
...
...
果然不能用还得加点注册表料啊。

老方法搜索添加的dll文件名,发现同样在CLSID下面有actxprxy.dll和
rshx32.dll的定义,同时搜索下关联的CLSID,发现有几处,
我们一同加入到注册表中。

Prop.reg


  1. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shellex\PropertySheetHandlers\{1f2e5c40-9550-11ce-99d2-00aa006e086c}]
  2. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shellex\PropertySheetHandlers\{1f2e5c40-9550-11ce-99d2-00aa006e086c}]

  3. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{1f2e5c40-9550-11ce-99d2-00aa006e086c}]
  4. @="rshx32.dll"
  5. "AccessPermission"=hex:01,00,04,80,60,00,00,00,70,00,00,00,00,00,00,00,14,00,\
  6.   00,00,02,00,4c,00,03,00,00,00,00,00,14,00,03,00,00,00,01,01,00,00,00,00,00,\
  7.   05,12,00,00,00,00,00,14,00,07,00,00,00,01,01,00,00,00,00,00,05,0a,00,00,00,\
  8.   00,00,14,00,03,00,00,00,01,01,00,00,00,00,00,05,04,00,00,00,cd,cd,cd,cd,cd,\
  9.   cd,cd,cd,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,01,02,00,00,00,00,\
  10.   00,05,20,00,00,00,20,02,00,00
  11. "DllSurrogate"=""
  12. "LaunchPermission"=hex:01,00,04,80,78,00,00,00,88,00,00,00,00,00,00,00,14,00,\
  13.   00,00,02,00,64,00,04,00,00,00,00,00,14,00,1f,00,00,00,01,01,00,00,00,00,00,\
  14.   05,12,00,00,00,00,00,18,00,1f,00,00,00,01,02,00,00,00,00,00,05,20,00,00,00,\
  15.   20,02,00,00,00,00,14,00,1f,00,00,00,01,01,00,00,00,00,00,05,04,00,00,00,00,\
  16.   00,14,00,0b,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00,cd,cd,cd,cd,cd,cd,\
  17.   cd,cd,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,01,02,00,00,00,00,00,\
  18.   05,20,00,00,00,20,02,00,00

  19. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1f2e5c40-9550-11ce-99d2-00aa006e086c}]
  20. @="Security Shell Extension"
  21. "AppId"="{1f2e5c40-9550-11ce-99d2-00aa006e086c}"
  22. "LocalizedString"=hex(2):40,00,25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,\
  23.   6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,\
  24.   00,5c,00,72,00,73,00,68,00,78,00,33,00,32,00,2e,00,44,00,4c,00,4c,00,2c,00,\
  25.   2d,00,35,00,39,00,00,00

  26. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1f2e5c40-9550-11ce-99d2-00aa006e086c}\Elevation]
  27. "Enabled"=dword:00000001
  28. "IconReference"=hex(2):40,00,25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,\
  29.   6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,\
  30.   00,5c,00,69,00,6d,00,61,00,67,00,65,00,72,00,65,00,73,00,2e,00,64,00,6c,00,\
  31.   6c,00,2c,00,2d,00,33,00,00,00

  32. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1f2e5c40-9550-11ce-99d2-00aa006e086c}\InProcServer32]
  33. @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  34.   00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,73,00,\
  35.   68,00,78,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,00,00
  36. "ThreadingModel"="Apartment"

  37. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{9BA05972-F6A8-11CF-A442-00A0C90A8F39}]
  38. @="ShellWindows"
  39. "AppId"="{9BA05972-F6A8-11CF-A442-00A0C90A8F39}"

  40. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}]
  41. @="PSFactoryBuffer"

  42. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}\InProcServer32]
  43. @="X:\\Windows\\System32\\ActXPrxy.dll"
  44. "ThreadingModel"="Both"

  45. [HKEY_LOCAL_MACHINE\PE_SOFT\Classes\Interface\{08DE05E1-94B8-4A17-A27C-004771A6D3A4}]
  46. @="IStreamGroup"
  47. [HKEY_LOCAL_MACHINE\PE_SOFT\Classes\Interface\{08DE05E1-94B8-4A17-A27C-004771A6D3A4}\ProxyStubClsid32]
  48. @="{fd7f2b29-24d0-4b5c-b177-592c39f9ca10}"

  49. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{504B27AA-001F-4179-9AD0-663A37C317A9}]
  50. @="ICheckDiskDialog"

  51. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{504B27AA-001F-4179-9AD0-663A37C317A9}\ProxyStubClsid32]
  52. @="{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}"

  53. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{B0371994-3FA6-4AB5-BD72-B3479FE90894}]
  54. @="IPropertySheetHandler"

  55. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{B0371994-3FA6-4AB5-BD72-B3479FE90894}\ProxyStubClsid32]
  56. @="{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}"
复制代码


再构建,测试,发现还不行。(这都是套路啊。。。回回这样,能不能一次加成功)

这时该怎么办呢?(这里搞了2天-。-)

先确定是不是注册表的问题,我们用OKPE.wim的SOFTWARE替换,
测试。发现确实可以显示了,那就是注册表了。
(这里有个小插曲,我先精简了WinSxs,结果写错为了,丢了2个目录,
x86_microsoft.windows.c..-controls.resources_6595b64144ccf1df_5.82.10586.0_zh-cn_f6ad7353800c302a
x86_microsoft.windows.c..-controls.resources_6595b64144ccf1df_6.0.10586.0_zh-cn_4954983c79a25127
这2个目录没有,注册表完全替换了也没用!当时我不知道,把想到APPID,CLSID,CLASSIC,MICROSOFT,INTERFACE,
几个大项一个个试试了边,最后整个System32目录替换掉了都没有成功显示
文件属性,直到我把Windows整个目录一个个都替换了,才发现是WinSxs精简失误。
所以重要的事情说一下:没有前人开路,精简放到最后做!)

既然,整个SOFTWARE可以用,我们就导出些关键项试试:
APPID.reg
CLSID.reg
INTERFACE.reg
CLASSIC.reg
MICROSOFT.reg

崩溃不行?哎,全部导入算了,ALL.reg,构建,启动测试。
...
...
...
什么,竟然没有用!
等等,完全替换SOFTWARE可以用,用reg文件却不可以?
哪里有问题?

思考1.权限不对?部分项目没写入?(导入命令没有提示权限错误)
思考2.难道注册表多内容也不行?

回忆下,一条龙手动做PE的时候,有说删除注册表的
"RunAs"="Interactive User"

也没见谁将过为什么,这种知其然而不知其所以然我自然也没有去做,
那么,我们现在来看看是不是这个原因,导出2份注册表信息进行比较,
看看有没有"RunAs"被删除的项目。

诶,只看差异部分,立马我们可以找到还确实有一项。
[HKEY_LOCAL_MACHINE\PE_SOFTWARE\Classes\AppID\{448aee3b-dc65-4af6-bf5f-dce86d62b6c7}]

我们bing一下{448aee3b-dc65-4af6-bf5f-dce86d62b6c7},有关于
WIN10下管理者不能查看属性的网页,甚至有这个,早看到就好了CRY。
http://www.ghisler.ch/board/viewtopic.php?t=42571

这里证实了,"RunAs"="Interactive User"删除的必要性,
但是所有都删除是否有必要,自己可以斟酌处理。

至此,我们可以得到显示文件属性的"鱼"了。

FileProperty
  +ADD_ITEMS.txt
  +FileProperty.reg

ADD_ITEMS.txt

  1. Windows\System32\actxprxy.dll
  2. Windows\System32\apphelp.dll
  3. ;need for "security" tab
  4. Windows\System32\rshx32.dll
  5. ;mui
  6. Windows\System32\%PB_PE_LANG%\rshx32.dll.mui
复制代码



FileProperty.reg

  1. Windows Registry Editor Version 5.00

  2. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shellex\PropertySheetHandlers\{1f2e5c40-9550-11ce-99d2-00aa006e086c}]
  3. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shellex\PropertySheetHandlers\{1f2e5c40-9550-11ce-99d2-00aa006e086c}]

  4. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{1f2e5c40-9550-11ce-99d2-00aa006e086c}]
  5. @="rshx32.dll"
  6. "AccessPermission"=hex:01,00,04,80,60,00,00,00,70,00,00,00,00,00,00,00,14,00,\
  7.   00,00,02,00,4c,00,03,00,00,00,00,00,14,00,03,00,00,00,01,01,00,00,00,00,00,\
  8.   05,12,00,00,00,00,00,14,00,07,00,00,00,01,01,00,00,00,00,00,05,0a,00,00,00,\
  9.   00,00,14,00,03,00,00,00,01,01,00,00,00,00,00,05,04,00,00,00,cd,cd,cd,cd,cd,\
  10.   cd,cd,cd,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,01,02,00,00,00,00,\
  11.   00,05,20,00,00,00,20,02,00,00
  12. "DllSurrogate"=""
  13. "LaunchPermission"=hex:01,00,04,80,78,00,00,00,88,00,00,00,00,00,00,00,14,00,\
  14.   00,00,02,00,64,00,04,00,00,00,00,00,14,00,1f,00,00,00,01,01,00,00,00,00,00,\
  15.   05,12,00,00,00,00,00,18,00,1f,00,00,00,01,02,00,00,00,00,00,05,20,00,00,00,\
  16.   20,02,00,00,00,00,14,00,1f,00,00,00,01,01,00,00,00,00,00,05,04,00,00,00,00,\
  17.   00,14,00,0b,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00,cd,cd,cd,cd,cd,cd,\
  18.   cd,cd,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,01,02,00,00,00,00,00,\
  19.   05,20,00,00,00,20,02,00,00

  20. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1f2e5c40-9550-11ce-99d2-00aa006e086c}]
  21. @="Security Shell Extension"
  22. "AppId"="{1f2e5c40-9550-11ce-99d2-00aa006e086c}"
  23. "LocalizedString"=hex(2):40,00,25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,\
  24.   6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,\
  25.   00,5c,00,72,00,73,00,68,00,78,00,33,00,32,00,2e,00,44,00,4c,00,4c,00,2c,00,\
  26.   2d,00,35,00,39,00,00,00

  27. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1f2e5c40-9550-11ce-99d2-00aa006e086c}\Elevation]
  28. "Enabled"=dword:00000001
  29. "IconReference"=hex(2):40,00,25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,\
  30.   6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,\
  31.   00,5c,00,69,00,6d,00,61,00,67,00,65,00,72,00,65,00,73,00,2e,00,64,00,6c,00,\
  32.   6c,00,2c,00,2d,00,33,00,00,00

  33. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{1f2e5c40-9550-11ce-99d2-00aa006e086c}\InProcServer32]
  34. @=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  35.   00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,73,00,\
  36.   68,00,78,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,00,00
  37. "ThreadingModel"="Apartment"

  38. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{9BA05972-F6A8-11CF-A442-00A0C90A8F39}]
  39. @="ShellWindows"
  40. "AppId"="{9BA05972-F6A8-11CF-A442-00A0C90A8F39}"

  41. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}]
  42. @="PSFactoryBuffer"

  43. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}\InProcServer32]
  44. @="X:\\Windows\\System32\\ActXPrxy.dll"
  45. "ThreadingModel"="Both"

  46. [HKEY_LOCAL_MACHINE\PE_SOFT\Classes\Interface\{08DE05E1-94B8-4A17-A27C-004771A6D3A4}]
  47. @="IStreamGroup"
  48. [HKEY_LOCAL_MACHINE\PE_SOFT\Classes\Interface\{08DE05E1-94B8-4A17-A27C-004771A6D3A4}\ProxyStubClsid32]
  49. @="{fd7f2b29-24d0-4b5c-b177-592c39f9ca10}"

  50. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{504B27AA-001F-4179-9AD0-663A37C317A9}]
  51. @="ICheckDiskDialog"

  52. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{504B27AA-001F-4179-9AD0-663A37C317A9}\ProxyStubClsid32]
  53. @="{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}"

  54. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{B0371994-3FA6-4AB5-BD72-B3479FE90894}]
  55. @="IPropertySheetHandler"

  56. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{B0371994-3FA6-4AB5-BD72-B3479FE90894}\ProxyStubClsid32]
  57. @="{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}"

  58. ;this(PE_SOFTWARE) isn't a typo, WIM_Builder will also import this to offline hive file.
  59. ;need update ACL rights for offline importing.
  60. ;or you can add this on WinPE startup.(PE_SOFTWARE->SOFTWARE)
  61. [HKEY_LOCAL_MACHINE\PE_SOFTWARE\Classes\AppID\{448aee3b-dc65-4af6-bf5f-dce86d62b6c7}]
  62. ;"RunAs"="Interactive User"
  63. "RunAs"=-
复制代码


遗留问题,选项卡改变所有者会提示无法打开控制程序,看来还是缺点什么。(解决不了就右键加个命令行)
作者: slore    时间: 2016-7-6 22:42
本帖最后由 slore 于 2018-1-27 17:09 编辑

复制文件时的进度条

本帖最后由 slore 于 2016-07-08 20:40 编辑

ADD_ITEMS.txt
  1. Windows\System32\chartv.dll
复制代码





CopyProgressBar_INTERFACE_REG.zip (180.16 KB, 下载次数: 40)


本帖最后由 slore 于 2018-01-27 17:08 编辑

对于Win10 v1607确实是上面的文件,但是有点遗漏,就是之前 文件属性对话框 补充的
actxprxy.dll文件,以及对应CLSID的注册表项也是必须的。

INTERFACE我没有再继续下去,今天对最新版v1709进行确认的时候,发现文件补丁有差异,
通过和ljycslg的PE进行比较,很容易的得出了额外需要的1个新文件。借此机会也搞清楚了INTERFACE需要的具体接口注册表项目。
特在此更新,以便留档。

鱼:对于Win10 v1709需要的补丁(Patch):

ADD_ITEMS.txt
  1. Windows\System\chartv.dll
  2. Windows\System\OneCoreUAPCommonProxyStub.dll
复制代码


ProgressDlg.reg
  1. Windows Registry Editor Version 5.00

  2. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{95E15D0A-66E6-93D9-C53C-76E6219D3341}]
  3. @="PSFactoryBuffer"

  4. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{95E15D0A-66E6-93D9-C53C-76E6219D3341}\InProcServer32]
  5. @="x:\\Windows\\System32\\OneCoreUAPCommonProxyStub.dll"
  6. "ThreadingModel"="Both"

  7. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{036B4FC7-6A11-4C07-8046-22D268C37721}]
  8. @="IInterruptedOperationHandler"

  9. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{036B4FC7-6A11-4C07-8046-22D268C37721}\ProxyStubClsid32]
  10. @="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

  11. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{04B0F1A7-9490-44BC-96E1-4296A31252E2}]
  12. @="IFileOperationProgressSink"

  13. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{04B0F1A7-9490-44BC-96E1-4296A31252E2}\ProxyStubClsid32]
  14. @="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

  15. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{0C9FB851-E5C9-43EB-A370-F0677B13874C}]
  16. @="IOperationsProgressDialog"

  17. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{0C9FB851-E5C9-43EB-A370-F0677B13874C}\ProxyStubClsid32]
  18. @="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

  19. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{4AE7498C-E1C0-475F-8573-41C26127C5D8}]
  20. @="IOperationStatusTile"

  21. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{4AE7498C-E1C0-475F-8573-41C26127C5D8}\ProxyStubClsid32]
  22. @="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

  23. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{61A969EF-64EA-4C48-BBF5-EEDE3B32BF86}]
  24. @="IOperationStatusService"

  25. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{61A969EF-64EA-4C48-BBF5-EEDE3B32BF86}\ProxyStubClsid32]
  26. @="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"
复制代码


利用{95E15D0A-66E6-93D9-C53C-76E6219D3341}的Interface有20个左右吧,对于对话框上面这个就行了,建议导入的用完整的INTERFACE省事,以后功能只用补充DLL和CLSID下的项目。

渔:
有人觉得1楼的有点像我的WinXShell的广告,不过这个功能系统的各种“浏览。。。”按钮都有,所以我觉得并不是。
只是这个是我的第一个需求,所以把调查的过程和方法(渔)记录下了。

其实到这里渔的方法也还是一样。

搞出文件差分,凭经验或者逐个排除不影响的文件。
另外分享下经验,第一次,建议把所有文件(System32)都加进去,然后把SOFTWARE使用install.wim的或者自己参照的PE的复制过去,
先把文件列表确认下来,然后在根据文件来确定具体的注册表项目。

对于PE的DLL文件,最主要的键就是上面的CLSID,文件名找到{xxxx-yyyy-xxxx}这个Class ID,然后再通过这个ClassID找使用的地方(这里估计可以自动化)。
另外某些DLL可能还需要对应的mui文件,所以补充比较的时候也请注意,别错过了,其实对的文件。
作者: slore    时间: 2016-7-6 22:42
添加应用程序
作者: slore    时间: 2016-7-6 22:42
本帖最后由 slore 于 2016-7-6 22:46 编辑

通过ADK添加网络功能
作者: slore    时间: 2016-7-6 22:42
占一楼备用
作者: pseudo    时间: 2016-7-6 23:18
史上最好帖子之一。
楼主高人,能耐心科普,鱼渔兼备,更难得。

小建议:
“固态硬盘上,基本上30秒可以构建一次,20~30个文件左右后,大概1小时可以确定出来必要文件了。”
考虑一次构建一批供测试,下一批基于上一批结果。
设法利用正交试验法之类,或许不用1小时。

作者: 窄口牛    时间: 2016-7-6 23:25
楼主辛苦,支持动手,支持技术分享。
作者: 2012cwz    时间: 2016-7-7 08:50
占楼学习。
作者: engineerlzk    时间: 2016-7-7 09:04
向楼主学习!
作者: xzf680    时间: 2016-7-7 10:31
感谢分享,学习一下,什么时候分享个8.1PE工程与教程
也来个有渔也有鱼
作者: 2012bzsb    时间: 2016-7-7 11:29
强烈建议: 基于WINRE 而不是BOOT ,WIN10后,RE是支持无线, 以前版本比较过,差别不大.
平板,只有无线啊. 所以,WINRE
作者: slore    时间: 2016-7-7 11:31
xzf680 发表于 2016-7-7 10:31
感谢分享,学习一下,什么时候分享个8.1PE工程与教程
也来个有渔也有鱼

没有精力测试多平台,但是思路一样的,至少目前的内容8.1PE是适用的。
直接修改MaintPE中的config.ini指向install8.1.wim和boot8.1.wim就可以构建出来。

高级用法(工程共存):

MaintPE81
+config.ini
+INIT.bat

config.ini:
  1. set PB_SRC_WIM=H:\install81x86.wim
  2. set PB_BASE_WIM=%PB_MNT_DIR%\FA_Boot81x86.wim
复制代码


INIT.bat:
  1. call PB_APPLY_PACKAGE.bat %~dp0..\MaintPE
复制代码

作者: 2012bzsb    时间: 2016-7-7 11:44
其实吧,目前比较有用的是WIN10,其它版本真意义不大.

而RE 或者BOOT ,最需要的是一个SHELL ,原版最好. 最多余的是WINSXS,所以,如果给个标准模板:
精简WINSXS +原版SHELL( 有线,无线当然是必须的),  是不是就很好了?  然后,在给个多功能版,加入声卡支持,显卡支持.

其它功能, 好像就一个BITLOCK ,一个打印机 有部分人需要.

系统自己的浏览器,WMP播放器,图片查看,NET 这些都可以不用或者使用第三方的.
作者: 2012bzsb    时间: 2016-7-7 11:48
DISM,由于有DISM++那个神器, 能支持它就好
作者: slore    时间: 2016-7-7 12:40
2012bzsb 发表于 2016-7-7 11:29
强烈建议: 基于WINRE 而不是BOOT ,WIN10后,RE是支持无线, 以前版本比较过,差别不大.
平板,只有无线啊. 所 ...

boot.wim的第2卷,就是winre.wim。PE_Setup的加一个删除winpeshl.ini的DEL_FILES.txt即可。
作者: 2012919497149    时间: 2016-7-7 12:56
2012bzsb 发表于 2016-7-7 11:29
强烈建议: 基于WINRE 而不是BOOT ,WIN10后,RE是支持无线, 以前版本比较过,差别不大.
平板,只有无线啊. 所 ...

winre.wim里确实多了几个无线驱动文件
作者: 四海皆狂龙    时间: 2016-7-7 15:54
2012bzsb 发表于 2016-7-7 11:44
其实吧,目前比较有用的是WIN10,其它版本真意义不大.

而RE 或者BOOT ,最需要的是一个SHELL ,原版最好. 最 ...

恰恰相反,我认为原版shell是最没有意义的,原版shell是为固定桌面而生的,实现不适合pe这个非固定的系统。使用原版的shell就意味着用零散而没有灵活性的方式去添加应用和修改设置,所以目前凡是用标准shell都是做屁格局的,要修改就要对系统做手术。
作者: lanmeizhuangyua    时间: 2016-7-7 16:27
楼主辛苦  谢谢
作者: 2012bzsb    时间: 2016-7-7 16:53
其实,我只要XP那样简单风格的SHELL, 任务栏+桌面+资源管理器, 第三方的,如果好用,我要原版做什么?

任务栏, 目前这个基本可以,如果可以加个目录到任务栏就好了, 原版的可以弄个目录动任务栏,里面可以再建目录,可以放快捷方式,文件,用来做"开始菜单"
8,10我都是这么弄的,除了位置靠近系统托盘,其它没什么,用惯了就好了. 我链接在系统根目录"开始"目录.

桌面,原版SHELL的习惯了拖放个文件,右键什么的.  
资源管理器,XP那个比较习惯.(其实是:我的电脑 ,平时是直接打开我的电脑,而不是资源管理器), 如果实现打开目录功能, 和原版SHELL差不了多少文件了


作者: wplin    时间: 2016-7-7 21:53
謝謝大大
還是新手
大大說明還是有很多雖然說得很清楚
但是還是弄不明白
努力學習中
作者: slore    时间: 2016-7-7 21:54
2012bzsb 发表于 2016-7-7 16:53
其实,我只要XP那样简单风格的SHELL, 任务栏+桌面+资源管理器, 第三方的,如果好用,我要原版做什么?

任务 ...
如果实现打开目录功能, 和原版SHELL差不了多少文件了


希望可以提供原版SHELL的PATCH目录。

自然有很多已经实现系统原版的explorer.exe,但是文件还有很多才稳定,而且注册表要添加的项目更复杂。
还有系统的explorer目前WIN+D没人解决,很不方便。还有窗口的按回退键不好使。

当然,这里只是说明怎么来实现这个“打开文件”功能,至于用不用,自己根据添加文件SIZE,来决定是否第3方性价比更高,
我们是有选择权利的。
作者: moran    时间: 2016-7-7 22:43
好教程,支持一下。。
作者: 红毛樱木    时间: 2016-7-8 07:57
slore 发表于 2016-7-7 21:54
希望可以提供原版SHELL的PATCH目录。

自然有很多已经实现系统原版的explorer.exe,但是文件还有很 ...

原版的shl参考winbuilder脚本。
s写的在这边,winbuilder.cn
作者: 2011npwjm    时间: 2016-7-8 11:07
不错,谢谢楼主的分享
作者: 窄口牛    时间: 2016-7-9 07:22
再顶,呱唧呱唧。
作者: 2012hzy6420    时间: 2016-7-9 07:49
支持了支持楼主
作者: 2012_Supreme    时间: 2016-7-9 17:07
好贴,有空自己也弄弄
作者: 2012hzy6420    时间: 2016-7-10 07:31
zclz支持了支持楼主
作者: JCDN    时间: 2016-8-7 04:11
留下,慢慢学习
作者: 120268323    时间: 2016-8-27 19:35
支持楼主分享,资源分享失效,希望楼主补档
作者: cuicongyuan    时间: 2016-8-27 19:59

作者: oooitiger    时间: 2016-8-29 15:09
楼主,完整版的链接失效了!
作者: kingguan    时间: 2016-8-31 15:08
谢谢楼主,等待添加应用程序教学。
作者: wxwwa    时间: 2016-8-31 15:10
确实不错,眼前一亮的好文












蓝品盾防撞扶手
作者: wodj    时间: 2016-8-31 15:27
建议,应该把部份驱动和程序外置加载,这样方便用户灵活选择自己专属驱动,又可以节省WIM大小,论坛上已经很多这样的PE了,我是给双系统小平板用的,用来取代原系统,希望全能,网卡、显卡等重要驱动外置加载。。
作者: pseudo    时间: 2016-8-31 18:54
wodj 发表于 2016-8-31 15:27
建议,应该把部份驱动和程序外置加载,这样方便用户灵活选择自己专属驱动,又可以节省WIM大小,论坛上已经 ...

借问一下,双系统平板要怎样按键才出配置BIOS的界面?怎样才能从u盘启动pe?
作者: eachmacs    时间: 2016-9-1 15:19
slore 发表于 2016-7-6 22:39
第一个内核PATCH---文件打开对话框(NewFileOpenDlg)

渔:

在此基础上添加Dism等部署工具,支持分区,网络就已经很好,网络按需添加
作者: papago    时间: 2017-10-14 19:32
感谢slore前辈!手把手一起做WIN10维护PE,有渔也有鱼
作者: papago    时间: 2017-10-18 11:58
slore 发表于 2016-7-6 22:42
通过ADK添加网络功能

最关心的是添加网络功能。adk
史上最好的教程贴之一。
作者: papago    时间: 2017-10-18 13:34
slore 发表于 2016-7-6 22:42
通过ADK添加网络功能

最关心的是添加网络功能,adk。
史上最好的教程贴之一。
作者: 879792799    时间: 2017-12-13 16:50
最关心的是添加网络功能,adk。
史上最好的教程贴之一。
作者: 双响炮    时间: 2018-7-2 19:40
对PE又多了一些了解,收藏了
作者: 双响炮    时间: 2018-7-2 19:42
不过链接好像得补啦
作者: wangziqiang    时间: 2018-12-27 21:34
地址失效了
作者: hfut    时间: 2019-5-9 10:15
对于依赖文件的跟踪,我采取的是静态与动态相结合。
静态,就是在TotalCommander中,安装Fileinfo插件,在要分析的程序上按F3,打开文件信息窗口;再按“DLL依赖”面板,从中就可直接看到它所依赖的基本DLL是哪些了!对于标红的重点关注。注意有些是指向当前系统目录的,则也是怀疑对象,因为当前目录没有它要的,就按照搜索路径找到系统目录去了。

动态,就是采用Procmon之类实时监控程序的运行,Ctrl+H进行进程过滤,只查看与要监控的程序相关的活动。对于结果中显示SUCCESS的,右键,排除之。通常只需右键包含NAME  NOT  FOUND的即可。注意有时要监控多次,发现少了什么,补充过来,再测试,可能还会有新的缺少的文件。

至于注册表,当然是比较法,使用Advanced Registry Tracer,先扫描当前注册表,然后做一下相关设置,再扫描一下注册表,然后比较前后两次扫描结果,导出re.reg,手工去除无关的注册表垃圾,即可得到与设置相关的注册表内容。

比如我在纯手工制作PE时,一开始比较原始,进入到CMD界面后,运行Explorer后没反应,于是在命令行运行硬盘上备用的Total Commander,找到PE的Explorer.exe,按F3,查看DLL依赖,瞬间就知道它缺少了什么!于是从硬盘的备用系统中复制相关文件过来,继续测试……如此可极快地搞定缺少的文件。

最麻烦的是有些时候无法静态跟踪,动态查看也找不到线索的,那就靠拼人品和时间了~!@#$%^

上述办法,非常简单直观,比逐个蛮办法测试要高效得多。供大家参考。
作者: aguaji    时间: 2021-11-2 11:02
希望出个外壳的详细教程
作者: conan0cn    时间: 2021-11-15 10:52
默默的跟上老铁的步伐
作者: sairen139    时间: 2023-2-8 15:21
本帖最后由 sairen139 于 2023-2-11 09:08 编辑
slore 发表于 2016-7-6 22:42
复制文件时的进度条

本帖最后由 slore 于 2016-07-08 20:40 编辑

chartv.dll有没有相应的注册表文件需要补充?找到补充下面这条就补成功了


;;复制粘贴进度条
[HKEY_LOCAL_MACHINE\PE-SOFT\Classes\Interface\{6D5174EC-F425-4CD9-8643-CF36042987F1}]
@="IOperationStatusService"
[HKEY_LOCAL_MACHINE\PE-SOFT\Classes\Interface\{6D5174EC-F425-4CD9-8643-CF36042987F1}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"



作者: yyz2191958    时间: 2023-2-8 18:32
感谢楼主分享
作者: sairen139    时间: 2023-2-11 14:20
sairen139 发表于 2023-2-8 15:21
chartv.dll有没有相应的注册表文件需要补充?找到补充下面这条就补成功了

复制粘贴进度条和覆盖提示鱼和熊掌得兼的注册表补充片段需加四行:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{4AE7498C-E1C0-475F-8573-41C26127C5D8}]
@="IOperationStatusTile"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{4AE7498C-E1C0-475F-8573-41C26127C5D8}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5174EC-F425-4CD9-8643-CF36042987F1}]
@="IOperationStatusService"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5174EC-F425-4CD9-8643-CF36042987F1}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"





[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6FAF1156-8855-47B5-BDC8-4555D13C095F}]
@="IConflictInterrupt"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6FAF1156-8855-47B5-BDC8-4555D13C095F}\ProxyStubClsid32]
@="{C90250F3-4D7D-4991-9B69-A5C5BC1C2AE6}"


[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{8F45EF43-0585-4881-A90D-F55D35CE7797}]
@="IOperationInterrupt"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{8F45EF43-0585-4881-A90D-F55D35CE7797}\ProxyStubClsid32]
@="{95E15D0A-66E6-93D9-C53C-76E6219D3341}"

作者: huang1987    时间: 2023-11-26 05:17
谢谢分享




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3