检测到论坛CSS可能没有正确加载,如出现排版混乱请刷新重试。

We detected that the CSS might not be loaded correctly. If the website displays abnormally, Please refresh and try again.

  • Windows
  • Windows Feature Experience Pack的讨论与研究

第二铲
我觉得可以研究一下CShell与WFEP的关系。关键在于,Windows 10X到底用没用上CShell。
话说,10X的UUP更新文件貌似只有楼主手里有诶[tieba=huaji-reverse]

    ThinkBou 10X的GUI Shell实现是靠Modern UX Product App实现的,而11的新UI部分就是靠在体验包以及其他加载项里面堆料(包括Shell32.dll和其他我们熟知的的老朋友 这些老朋友的话并不是直接堆料,是以链接的形式注入Extension,Windows下的ShellExperiences、SystemResources、SEH[Shell Experience Host](UPD 2023/1/15:SEH已经名存实亡,Cobalt阶段还存在对它的引用,Nickle看起来是抛弃它了,文件大小没有什么变动,只是多了些引用到外面的链接)等等,还离不开UI.Xaml.CBS)

    ThinkBou Windows 10X到底用没用上CShell。

    用上了。CShell跟WCOS是绑定的,10X的话直接有一个CShell的包,与Modern UX App有着千丝万缕的联系,这个CShell的包装在普通Client上倒是不痛不痒,因为没有它的实现方式。

    ThinkBou 话说,FactoryOS中不包含Modern UX Product App吗

    是的,这东西本来就不是给Factory OS准备的,他的应用程序标题就叫Windows 10X。

      何木槿 所以10X中Modern UX Product App和WFEP不是一回事……?


      话说,FactoryOS中不包含Modern UX Product App吗?

        15 天 后

        何木槿 变成10X样式了

        话说我怎么记得10的输入法外观也是这样……你确定没贴错图吗


        DaleZ Windows 10上好像就是个表情按钮,Windows 10X上好像是如图所示(确实长得差不多😂
        我才发现Windows 10的IME候选栏支持Arilyc,然而Windows 11的不行

          ThinkBou 在?最右侧多了一个表情符号按钮抱歉搞错了,实际上就一些 UI 更改


          ThinkBou Windows 10上好像就是个表情按钮,Windows 10X上好像是如图所示(确实长得差不多😂

          对,实际上输入法就没有多少更改。咱来玩一个找不同:

          好了,所见即所得(

            ThinkBou 并不是一个东西,Modern UX Product App 才是10X Shell的总托管程序(取代了OOBE[具体还是得配合云体验主机的]、LogonUI和桌面体验)

              旧闻推送

              1. WFEP在传统Windows NT内核中刚开始应用时,Retail(通过商店推送,WindowsApp)的包名和后来不一样
                • 这是Build 18917中的注册表信息,包名是MicrosoftWindows.UX.Client.ST
                • 这是后来正式版的注册表信息,包名是MicrosoftWindows.Client

                  这个东西现在在商店中作为占位符出现,没有实际内容……

              有意思的是,后来在商店上架的Client的WFEP(Client)的PhoneProductId与18917的那个(UX.Client.ST)不同,而且在商店上架的10X的WFEP的PhoneProductId与这二者均不同

              1. 注册表中还有BuiltIn(通过UUP推送,SystemApp)的信息
                • 这是Build 18917中BuiltIn所对应打包应用的AppxManifest,包名是MicrosoftWindows.UX.Inbox

                  值得注意的是,最开始不管是BuiltIn还是Retail均是作为WindowsApp出现的。
                • 这是19041+的注册表,包名是MicrosoftWindows.Client.CBS(与之对比的是,10X的WFEP包名是MicrosoftWindows.Windows10X.CBS)

                  这个才是真的起作用的Windows Feature Experience Pack

                  (左侧是Windows 11 21H2的WFEP,右侧是Windows 10 21H2的WFEP,可以看到Win11的WFEP承担了更多功能)

              有意思的是,10X中BuiltIn WFEP(Windows10X.CBS)与Client中BuiltIn WFEP(UX.Inbox/Client.CBS)的PhoneProductId相同,而且上面的那个Client.ST的PhoneProductId也与这二者相同,因此才能让10X的WFEP迁移到正常Client后还能正常运行。


              何木槿 现在用CAB包装

              何木槿 我觉得在Windows客户端版中用cab部署估计就是要承担更多任务(比如要承担部分Shell的内容),要求其必须作为SystemApp出现,并且由于涉及到未公开API需要通过Windows更新提供更完整的内容。
              正如上面提到的,真正起作用的WFEP在Windows 10/11中是SystemApp,不是WindowsApp。所以很自然的,这玩意作为打包应用单独安装起作用是绝对不可能的。因此何木槿 何木槿 ,如果需要让WFEP完全生效,你需要把它部署为SystemApp。除此以外,你可能还需要一些API的支持……

                ThinkBou 通过解包cab,然后安装里面的两个mun文件,就可以部署为SystemApp,因为这是通过更新服务部署的()
                实际上你发现着这些我都在18947以及之后的20H1 Builds里面发现过,只不过当时大部分都是占位符,所以我没怎么在意,然后18947里面也已经出现了 Modern UX Product App的雏形,以及HtmlStart()

                  何木槿 不过CBS和ST是什么意思呢🤨
                  如果你认为CBS是CameraBarcodeScannerPreview,那么Windows Feature Experience Pack可能不适合你。


                  何木槿 通过解包cab,然后安装里面的两个mun文件,就可以部署为SystemApp,因为这是通过更新服务部署的()

                  那么如果我想把10X的WFEP部署为10/11的SystemApp呢

                  何木槿 这些我都在18947以及之后的20H1 Builds里面发现过

                  所以是旧闻推送,省的你去火星接我了 😅

                  何木槿 18947里面也已经出现了 Modern UX Product App的雏形,以及HtmlStart(

                  Build 18947是一个特殊的版本,出现这些东西其实很正常,毕竟那是rs_xbox分支。我认为这些东西要是在正常分支里出现了才不正常……

                    何木槿 实际上,那个Modern UX 雏形的占位符里面有两个命名为TestThis和TestThat的无后缀文件(Canary实锤了),有少量pri、winmd文件(但文件大小都达到了20~200KB,pri文件似乎是Qt编译的XAML库、winmd暂时不明作用。
                    18947 的Windows下的ShellExperiences和ShellComponents文件夹下出现了Xaml Start的appx文件,直接调取的是appx文件(还需要一个dll),10X很多东西都是HTML+WinUI 2.4+与内核和资源文件交流的动态链接库实现的,11则多为WinUI 2.6堆料。


                      勉强让22504的体验包跑了起来,很多东西都炸了(explorer需要崩溃重启10多次才能正常显示用户界面,搜索和输入法候选不可用,但新版麦克风提示、位置使用提示啥的都在)

                        13 天 后

                        ThinkBou 您在这挖坟呢
                        的确,WFEP分家了,但现在WFEP还是注重用户体验,这没有任何问题。

                        7 天 后

                        何木槿 ComposaBle Shell?想多了,应该是Component Based Servicing Reference
                        ST可能是STore?

                        10 天 后

                        ThinkBou 有的,但体积很小。
                        WCOS本质上还是NT,有注册表是很正常的。

                        3 个月 后

                        必须挖坟
                        ThinkBou SV2马上就要GA了,那么WFEP到底起什么作用也可以下做初步总结了:

                        1. 作为一部分Shell出现,用于刷新explorer的屎山代码
                        2. 包括一部分具有SystemResources性质的文件,比如任务栏的资源文件
                        3. 替代了一部分ShellExperienceHost的功能,比如开始菜单和搜索的UX
                        4. 集成了一些非独立核心部件,比如输入体验

                        我还是很好奇为什么任务管理器的刷新不集成到WFEP,难道是原来开发10的人员换岗换回来了?抑或是只集成资源管理器岛化刷新的内容?


                        不过还有一个问题需要解释:搞WFEP的原因是什么?

                          ThinkBou 我还是很好奇为什么任务管理器的刷新不用WFEP

                          挂在WFEP上也不是什么好的选择,附加xbf倒是一些开发组的作风。

                          不过这次的集成倒是与系统更紧密,例如在SystemResources里面还挂了一些新版任务管理器的pri。(2023/1/15)

                            国内总算有可以稳定访问的比较好用的UUP Dump了

                            © 2025 wvbCommunity 管理团队

                            删封申诉 | 知乎专栏 | 状态监控 | 用户协议(EULA) | 隐私政策

                            本站文章除其作者特殊声明外,一律采用CC BY-NC-SA 4.0许可协议进行授权,进行转载或二次创作时务必以相同协议进行共享,严禁用于商业用途。