找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 3289|回复: 66

[原创] 【AI 实践】解决 11PE 痛点 | 手动切换输入法卡死 / Shell32 无法固定任务栏快捷方式

 荐  火 [复制链接]
发表于 2026-11-1 01:02:24 | 显示全部楼层 |阅读模式
本帖最后由 熊猫专用 于 2026-11-15 02:26 编辑

为什么出现这个问题?
事情起因是在研究如何在 PE 上使用 Rime 输入法,于是就在使用 Kuer 版主的 25H2、26H2 PE 测试输入法时发现了鼠标手动点击任务栏上的语言栏切换输入法出现卡死的问题。
起初还以为是输入法问题,但换了别的第三方输入法(除了小小)之后问题还是依旧。
后面刷到 @2013koko 大佬的帖子 Win11PEx64_26300.9457_网络版 & 维护版(2026.10.23) 回帖找到了解决方向。(2026.11.8 更新,顺便修复了下 Shell32 无法正常手动固定任务栏图标问题)
得益于 AI 现在的发展,在其辅助之下总算研究出了在不替换旧版本文件的前提下修复的方案,现分享给大家。
(使用模型:Xiaomi-Mino V2.6 Pro with WorkBuddy 辅助 Codex)
解决方案
复制下面的批处理命令运行即可。

注意:
1️⃣编码建议使用 ANSI+CR LF,避免出现运行失败的问题;
2️⃣需要依赖 binmay.exe 来修改十六进制,这个可以反而从 WimBuilder2 提取出来使用。
3️⃣Shell32 每个小版本修改的十六进制的方案是不同的,所以我的方案目前不能保证都能通用,但是可以通过将命令及  .dll 喂给 AI 尝试进行分析并修复。
InputSwitch.dll —— 修复高版本内核手动切换输入法时卡死问题
  1. echo 修复高版本内核手动切换输入法时卡死问题
  2. binmay.exe -U "%X%\Windows\System32\InputSwitch.dll" -s "85 C0 78 FF C6
  3. 83 21 01 00 00 00" -S "FF FF FF 00 FF FF FF FF FF FF FF" -r "85 C0 EB FF
  4. C6 83 21 01 00 00 00" -R "FF FF FF 00 FF FF FF FF FF FF FF"

  5. binmay.exe -U "%X%\Windows\System32\InputSwitch.dll" -s "48 8B D9 75 FF
  6. 83 79 10 07 75 FF" -S "FF FF FF FF 00 FF FF FF FF FF 00" -r "48 8B D9 EB
  7. FF 83 79 10 07 75 FF" -R "FF FF FF FF 00 FF FF FF FF FF 00"

  8. echo 修复 26100.9278+ / 28000.2804+ 内核手动切换输入法时卡死问题
  9. ::26100.9278+
  10. binmay.exe -u "%X%\Windows\System32\InputSwitch.dll" -s "00 10 00 00 4A
  11. 88 0D 00 02 00 60 41 00 00 04 00" -S "00 10 00 00 C0 FB 0D 00 02 00 60
  12. 41 00 00 04 00" -r "00 10 00 00 4A 88 0D 00 02 00 60 41 00 00 04 00" -R
  13. "00 10 00 00 C0 FB 0D 00 02 00 60 41 00 00 04 00"

  14. ::28000.2804+
  15. binmay.exe -U "%X%\Windows\System32\InputSwitch.dll" -s "00 10 00 00 BB 8C 0D 00 02 00 60 41 00 00 04 00" -S "00 10 00 00 C0 FB 0D 00 02 00 60
  16. 41 00 00 04 00" -r "00 10 00 00 A4 8D 0D 00 02 00 60 41 00 00 04 00" -R "00 10 00 00 A4 8D 0D 00 02 00 60 41 00 00 04 00"

  17. echo 修复 22621.5840 内核手动切换输入法时顿一下问题(因为 22631 虽然也有这个问题,但不至于将整个 Explorer 卡死)
  18. binmay.exe -U "%X%\Windows\System32\InputSwitch.dll" -s "48 8B CB E8 E0 02 00 00 8B F0" -S "48 8B CB E8 E0 02 00 00 8B F0" -r "48 8B CB B8 05 40 00 80 8B F0" -R "48 8B CB B8 05 40 00 80 8B F0"
  19. binmay.exe -U "%X%\Windows\System32\InputSwitch.dll" -s "84 C0 0F 84 A7 00 00 00 80 BB 21 01 00 00 00" -S -r "84 C0 E9 9A 00 00 00 90 80 BB 21 01 00 00 00" -R "84 C0 E9 9A 00 00 00 90 80 BB 21 01 00 00 00"
  20. binmay.exe -U "%X%\Windows\System32\InputSwitch.dll" -s "00 10 00 00 8E 78 0E 00 02 00 60 41 00 00 04 00" -S "00 10 00 00 8E 78 0E 00 02 00 60 41 00 00 04 00" -r "00 10 00 00 E8 AB 0D 00 02 00 60 41 00 00 04 00" -R "00 10 00 00 E8 AB 0D 00 02 00 60 41 00 00 04 00"
复制代码
Shell32 任务栏固定
  1. echo 修复-任务栏固定(26x00)
  2. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "84C00F8462010000" -r "84C0E97101000090"
  3. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4C2438E89230B8FF488D442438488944" -r "4E18488B01448BCD4C8B466033D2488B"
  4. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4C2438E882FBB7FF488D442438488944" -r "4E18488B01448BCD4C8B466033D2488B"
  5. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "24204C8D0D318E1B0033D2448D4204" -r "8080000000E848DA1400E9A7000000"
  6. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "24204C8D0D01A61B0033D2448D4204" -r "8080000000E878F21400E9A7000000"
  7. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "24204C8D0DD1A51B0033D2448D4204" -r "8080000000E878F21400E9A7000000"
  8. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "ED0F842906" -r "ED0F84C101"
  9. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "488D15BCE62C00E833160200488B48084885C90F842A04000039390F86220400" -r "E93E0400004981FE000001007219488D4E104C89F24C8D442449E8F43C2D0041"
  10. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "488D15BC392D00E8232D0200488B48084885C90F842A04000039390F86220400" -r "E93E0400004981FE000001007219488D4E104C89F24C8D442449E8F48F2D0041"
  11. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "0048897DE048897DE848897DF04983CC" -r "89C7E91C04000041BF57000780E91104"
  12. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "FF48397C2448" -r "000090909090"
  13. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "498B0424488B7858488D4C2448E8D140" -r "E99600000041F6C701740A4D89C8E8E8"
  14. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "498B0424488B7858488D4C2448E8C1AF" -r "E99600000041F6C701740A4D89C8E8E8"
  15. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "BAFF4883C8FF48894424504889442458" -r "C8FFFFEB05E80DC7FFFFE9E9FEFFFF41"
  16. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "B9FF4883C8FF48894424504889442458" -r "C8FFFFEB05E80DC7FFFFE9E9FEFFFF41"
  17. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4C8D442448488B542430498BCC488BC7" -r "F6C7017417498D47FF488B5424304889"
  18. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "E8DE0915008BF885C0792BBA17070000" -r "10488364243000E9890000004531C048"
  19. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "E80E2215008BF885C0792BBA17070000" -r "10488364243000E9890000004531C048"
  20. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4C8D050CEF1B00448BCF" -r "8B542430E97400000090"
  21. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4C8D052C001C00448BCF" -r "8B542430E97400000090"
  22. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4C8D05FCFF1B00448BCF" -r "8B542430E97400000090"
  23. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "CBE81FC8FFFF" -r "CBE9FD000000"
  24. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4533C0488B542430488BCE" -r "E965FFFFFF909090488BCE"
  25. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "BA1E070000EB8B" -r "E9F6FEFFFF9090"
  26. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "0010000083C47A000200604100000400" -r "00100000F19A7A000200604100000400"
  27. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "0010000078037C000200604100000400" -r "00100000384E7C000200604100000400"
  28. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "00100000AA7D7C000200604100000400" -r "001000009BF87B000200604100000400"

  29. echo 修复-任务栏固定(22631)
  30. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "C00F8402030000" -r "C0E90303000090"
  31. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "BAFF84C00F84C0000000" -r "BAFF84C0E9C100000090"
  32. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "BBFF84C0740B" -r "BBFF84C0EB0B"
  33. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "001000001CFD87000200604100000400" -r "0010000089D787000200604100000400"
  34. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "0F84FF010000488D" -r "E92E03000090488D"
  35. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "8364243800488D4C2438E83A94ADFF48" -r "8D4E1831D24C8B46604189E9E8FCC6FF"
  36. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "894424204C8D0DBA291900" -r "FFE9D10000009090909090"
  37. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "F60F84B106" -r "F60F84FE01"
  38. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "488D1508B6FFFFE8274A000033D2488B" -r "E9890400004981FF000001007219498D"
  39. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "C8E871BDB1FF84C00F84700400004889" -r "4D104C89FA4C8D442449E8A016000041"
  40. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "75E0488975E8488975F04983CD" -r "89C4E96704000041BC57000780"
  41. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "FF4839742448" -r "E95C04000090"
  42. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "498B0424488B5858488D4C2450E80255" -r "E9A100000041F6C701740A4D89C8E865"
  43. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "B3FF4883C8FF48894424584889442460" -r "C1FFFFEB05E886BEFFFFE9E3FEFFFF41"
  44. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "FEFFFF4149BA70A9D730C3B691AE4C8D" -r "FEFFFF41F6C7017417498D47FF488B54"
  45. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "FF488B5444245048" -r "FF488B5424304889"
  46. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "8B542430498BCC488BC3FF15ACDF1700" -r "10488364243000E9940000004531C048"
  47. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "D885C0792BBA27070000" -r "542430E97F0000009090"
  48. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "CBE89EBFFFFF8B" -r "CBE9030100008B"
  49. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4533C0488B542430488BCF" -r "E95AFFFFFF909090488BCF"
  50. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "BA2E070000EB8B" -r "E9E8FEFFFF9090"
  51. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "0010000078C58C000200604100000400" -r "00100000A1C78C000200604100000400"

  52. echo 修复-任务栏固定(28000)
  53. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "0F846B010000488D4B" -r "E97A01000090488D4B"
  54. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "C744243800000000488D4C2438E833DA" -r "8D4E1831D24C8B46604189E9E8C8C4FF"
  55. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "B7FF488D442438" -r "FFE9BD00000090"
  56. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "ED0F842A06" -r "ED0F84C101"
  57. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "488D151A322D00E8D5320200488B4808" -r "E93F0400004981FE000001007219488D"
  58. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4885C90F842B04000039390F86230400" -r "4E104C89F24C8D442449E8128D2D0041"
  59. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "0048897D2048897D2848897D304983CC" -r "89C7E91D04000041BF57000780E91204"
  60. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "FF48397C2448" -r "000090909090"
  61. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "498B0424488B7858488D4C2450E8AC8E" -r "E99600000041F6C701740A4D89C8E81F"
  62. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "C2FF4883C8FF48894424584889442460" -r "C3FFFFEB05E838C1FFFFE9E0FEFFFF41"
  63. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4C8D442450488B542438498BCC488BC7" -r "F6C7017417498D47FF488B5424384889"
  64. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "E8E93715008BF885C0792BBA17070000" -r "10488364243800E9890000004531C048"
  65. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4C8D05BF241C00448BCF" -r "8B542438E97400000090"
  66. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "CBE853C2FFFF" -r "CBE906010000"
  67. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "4533C0488B542438488BCEE801" -r "E965FFFFFF909090488BCEE801"
  68. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "BA1E070000EB8B" -r "E9EDFEFFFF9090"
  69. binmay.exe -U "%X%\Windows\System32\shell32.dll" -s "001000000BF87B000200604100000400" -r "00100000AA407C000200604100000400"
复制代码


是如何解决的?
在前言中,我就刷到 @2013koko 大佬的帖子 Win11PEx64_26300.9457_网络版 & 维护版(2026.10.23) 回帖找到了解决方向,于是我开始从 InputSwitch.dll 开始下手。
一开始使用 AI 拿新旧两版本的 dll 对比后,看了报告发现了加依赖和注册表的体积会太大,有点不符合修复的目的了,于是就想到了对比修改 DLL 的二进制文件这条路。
没想到最终的思路是对的,对比旧版本 .dll 来修改新版本 .dll 之后的二进制文件之后,真能正常切换且不会导致 Explorer 卡死了。
(目前账号权限原因无法上传动图,图床又怕加载不出来 .gif,但测试了几回已经没发现卡死的情况。)
也就是说,目前的解决方案就可以在不增加额外依赖的前提下,只修改系统文件,来完美地修复这个问题了,还是不得不感慨 AI 的进步。

相关问题 Q&A
Q:为什么小小输入法不受切换输入法卡死的影响?
A:因为小小输入法的思路与传统输入法的加载方式不同,小小输入法是可以不加载 ctfmon.exe 来实现打字,而大部分 IME 都依赖语言栏来切换,所以修复是必须的。

Q:为什么 22631 也提供修复输入法的修复补丁了?
A:因为其实 22631 虽然也有这个问题,虽然不至于将整个 Explorer 卡死,但强迫症想修复的话还是可以试试的。

Q:我为什么不用键盘快捷键切换,一切都正常,为什么还要修复手动切换呢?
A:没键盘设备的环境下就有必要修复了,且大部分情况下我还是会有习惯手动切换输入法的情况。

Q:为什么 Shell32 修复固定的十六进制文件这么长?
A:没办法,目前的思路就是通过对比新旧两版本的差异然后做修改补充的,虽然有点蠢,但进测试发现是可以正常使用的(2013Koko 的 26300.9457 及 蜂鸟 PE 测试均通过!)
我这里欢迎各位积极探索出新的修复方案,争取让固定十六进制文件能缩短点。

Q:使用我的解决方案要不要注明帖子链接?
A:因为是使用 AI 编写的东西,所以你也可以不需要署名和考虑商用相关问题。
一方面也是希望我的解决方案能够给大家提供帮助,另一方面这也是尝试使用 AI 修复 PE 问题的一个实践,可以参考下如何解决。

...(后补)

后记
希望我的解决方案能够给大家提供帮助,第一次使用 AI 解决 PE 上的痛点问题,如果有问题的话欢迎跟帖反馈~

PanDaTech 2026.11.8



评分

参与人数 6无忧币 +30 收起 理由
xmzhqw + 5 很给力!
aiya01 + 5 很给力!
2013koko + 5 赞一个!
情深梦缘 + 5 赞一个!
hsmy + 5 赞一个!
浪仔 + 5 赞一个!

查看全部评分

 楼主| 发表于 2026-11-1 01:03:49 | 显示全部楼层

更新日志

本帖最后由 熊猫专用 于 2026-11-8 17:11 编辑

2026.11.8
新增 - 26100、28000 InputSwitch 修复
新增 - Shell32 固定修复
(欢迎测试反馈,目前的方案不一定能通用)

评分

参与人数 1无忧币 +5 收起 理由
情深梦缘 + 5 很给力!

查看全部评分

回复

使用道具 举报

发表于 2026-11-1 02:00:03 | 显示全部楼层
学习学习
回复

使用道具 举报

发表于 2026-11-1 04:54:15 | 显示全部楼层
学习学习
回复

使用道具 举报

发表于 2026-11-1 06:21:18 | 显示全部楼层
还没有碰上,多谢提醒与指导,学习了
回复

使用道具 举报

发表于 2026-11-1 06:27:49 | 显示全部楼层
支持技术牛
回复

使用道具 举报

发表于 2026-11-1 06:43:37 | 显示全部楼层
解决了一个大难题了,非常感谢
回复

使用道具 举报

发表于 2026-11-1 06:44:00 来自手机 | 显示全部楼层
感谢分享
回复

使用道具 举报

发表于 2026-11-1 07:37:04 | 显示全部楼层
回复

使用道具 举报

发表于 2026-11-1 07:55:32 | 显示全部楼层
了解一下
回复

使用道具 举报

发表于 2026-11-1 07:58:27 | 显示全部楼层
支持有益探索
回复

使用道具 举报

发表于 2026-11-1 08:02:58 | 显示全部楼层
学习一下,多谢分享
回复

使用道具 举报

发表于 2026-11-1 08:05:19 | 显示全部楼层
好像没有碰到这种情况过。
回复

使用道具 举报

发表于 2026-11-1 08:08:34 来自手机 | 显示全部楼层
谢谢楼主分享
回复

使用道具 举报

发表于 2026-11-1 08:32:46 | 显示全部楼层
佩服楼主这种会去折腾的人,我这个懒鬼也就是想想了
回复

使用道具 举报

发表于 2026-11-1 09:27:41 | 显示全部楼层
支持 原创

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

发表于 2026-11-1 09:27:50 | 显示全部楼层
看看楼主的帖子,学习学习啊
回复

使用道具 举报

发表于 2026-11-1 09:42:55 | 显示全部楼层
好強,謝謝分享
回复

使用道具 举报

发表于 2026-11-1 12:10:39 | 显示全部楼层
楼主不知道有没有兴趣挑战一下高版本下程序固定到任务栏的历史难题?

点评

Shell32.dll 有空再研究,因为也是正好在研究输入法时发现的问题,顺手修复了下。  详情 回复 发表于 2026-11-1 14:26
+1 新旧版 Shell32.dll 的差异。 俺们是ai小白  详情 回复 发表于 2026-11-1 12:56
回复

使用道具 举报

发表于 2026-11-1 12:56:02 | 显示全部楼层
absman1972 发表于 2026-11-1 12:10
楼主不知道有没有兴趣挑战一下高版本下程序固定到任务栏的历史难题?

+1
新旧版 Shell32.dll 的差异。
俺们是ai小白
回复

使用道具 举报

 楼主| 发表于 2026-11-1 14:26:06 | 显示全部楼层
absman1972 发表于 2026-11-1 12:10
楼主不知道有没有兴趣挑战一下高版本下程序固定到任务栏的历史难题?

Shell32.dll 有空再研究,因为也是正好在研究输入法时发现的问题,顺手修复了下。

点评

2026.11.7 测试,目前未果。还是一样拖不进。在慢慢解决测试。  详情 回复 发表于 2026-11-7 22:29
回复

使用道具 举报

发表于 2026-11-1 14:43:52 | 显示全部楼层
测试非常完美,楼主真厉害!
回复

使用道具 举报

发表于 2026-11-1 15:57:55 | 显示全部楼层
熊猫专用 发表于 2026-11-1 14:26
Shell32.dll 有空再研究,因为也是正好在研究输入法时发现的问题,顺手修复了下。 ...

提供更多细节供参考
1.以 23H2 为例,第一次出现在 22631.2506,使用前一版 22631.2428 的 shell32.dll 替换可修正问题
  如果要比较 dll 的话,这两个版本是最适合的,近相似性最高, 但又可鉴别问题
2.印像所及曾在支援 UWP 的 PE 测试过,固定到任务栏似乎是正常的
3.把输入法改成 UWP,不修改或替换 InputSwitch.dll 也不会卡死,但如你所说要补依赖及注册表

猜测类似的问题可能是 Windows 改版的过程中,加强了 UWP 的绑定,但大部分的 PE 不支持 UWP 进而造成异常

点评

实测你的说法正确 2428的可以,2506的就不行了  详情 回复 发表于 2026-11-2 14:16
在修 InputSwitch.dll 的时候,我给 AI 喂了 PE 和原版系统镜像后,也是给我了依赖和注册表,其中依赖中就是要补 XAML 运行库(UWP 依赖的一部分) 也是尝试着去补充依赖及注册表,问题依旧,于是就尝试修改 .dll  详情 回复 发表于 2026-11-1 18:02
回复

使用道具 举报

发表于 2026-11-1 17:36:54 | 显示全部楼层
学习一下
回复

使用道具 举报

 楼主| 发表于 2026-11-1 18:02:35 来自手机 | 显示全部楼层
本帖最后由 熊猫专用 于 2026-11-1 18:04 编辑
absman1972 发表于 2026-11-1 15:57
提供更多细节供参考
1.以 23H2 为例,第一次出现在 22631.2506,使用前一版 22631.2428 的 shell32.dll 替 ...


在修 InputSwitch.dll 的时候,我给 AI 喂了 PE 和原版系统镜像后,也是给我了依赖和注册表,其中依赖中就是要补 XAML 运行库(UWP 依赖的一部分)

也是尝试着去补充依赖及注册表,问题依旧,于是就尝试修改 .dll 了

Shell32.dll 换成旧版解决固定任务栏翻车的问题按理也是可以通过对比解决,但就怕的就是每个版本的二进制不同,只能等有空慢慢测试了。
(WinXShell 按理能接管,但我突然忘记参数了)

真的越来越猜不透阿三的骚操作了。。。

点评

WinXShell貌似搞不定  详情 回复 发表于 2026-11-2 14:44
回复

使用道具 举报

发表于 2026-11-2 13:42:40 | 显示全部楼层
2428和2506的Shell32.dll,已下好了,给你省点事

https://1672174.share.123pan.cn/123pan/CTv9-a0lpH
回复

使用道具 举报

发表于 2026-11-2 14:16:01 | 显示全部楼层
absman1972 发表于 2026-11-1 15:57
提供更多细节供参考
1.以 23H2 为例,第一次出现在 22631.2506,使用前一版 22631.2428 的 shell32.dll 替 ...

实测你的说法正确
2428的可以,2506的就不行了
回复

使用道具 举报

发表于 2026-11-2 14:44:25 | 显示全部楼层
熊猫专用 发表于 2026-11-1 18:02
在修 InputSwitch.dll 的时候,我给 AI 喂了 PE 和原版系统镜像后,也是给我了依赖和注册表,其中依赖中 ...

WinXShell貌似搞不定
回复

使用道具 举报

发表于 2026-11-2 17:32:14 | 显示全部楼层
针对 Windows 11 版本 22631.2428 与 22631.2506 中 shell32.dll 的差异,结合系统更新机制与 WinPE 环境特性,主要区别体现在‌功能入口调整‌、‌系统架构策略‌以及‌WinPE 兼容性表现‌三个方面。

1. 核心差异:右键菜单功能入口变更
这是用户感知最明显的差异,特别是在 WinPE(Windows 预安装环境)中:

22631.2428 版本‌:
行为‌:在文件资源管理器或桌面右键点击应用程序/快捷方式时,上下文菜单中直接显示“固定到任务栏”选项。
机制‌:shell32.dll 中的传统 Shell 扩展接口仍保留该入口,允许通过右键菜单直接调用任务栏固定逻辑。
22631.2506 版本(Win11 23H2 初始正式版)‌:
行为‌:右键菜单中‌移除‌了直接的“固定到任务栏”文本入口。
机制‌:微软在此版本中进一步推行现代化的上下文菜单设计,并调整了任务栏交互逻辑。固定操作被引导至其他方式(如拖拽、运行后右键图标固定)。在完整桌面版 Windows 中,这可能表现为菜单层级变化;但在精简的 WinPE 环境中,由于缺乏完整的现代 UI 框架支持,导致该功能入口看似“消失”或不可用。
2. 系统架构与更新策略差异
这两个版本号代表了 Windows 11 从 22H2 向 23H2 过渡的关键节点:

22631.2428‌:
属于 ‌Windows 11 22H2‌ 的后期累积更新版本。
此时系统仍沿用较为传统的 Shell 交互逻辑,shell32.dll 的功能集相对稳定,兼容旧有的脚本和右键菜单自定义项。
22631.2506‌:
是 ‌Windows 11 23H2‌ 的‌初始发布版本‌(Build 22631.2506, KB5031455)。
启用包机制‌:23H2 并非完全重写系统,而是通过一个“启用包”(Enablement Package)激活新功能。虽然核心系统文件共享,但 shell32.dll 可能随累积更新包含了新的 UI 逻辑和资源定义,以支持 Copilot、新的任务栏溢出菜单等特性。
资源裁剪与优化‌:在新版本中,微软可能对 shell32.dll 内部的字符串表、菜单资源进行了重构,移除了部分被认为过时或非主流的入口,以简化用户体验。
3. WinPE 环境下的特殊表现
WinPE 是一个极简化的 Windows 环境,其 shell32.dll 是完整系统的精简子集:

兼容性断裂‌:
在 22631.2428 的 WinPE 镜像中,构建工具可能保留了较旧的 Shell 组件,使得传统右键菜单功能正常。
在基于 22631.2506 构建的 WinPE 中,由于主系统版本升级,WinPE 的构建源文件更新。新版的 shell32.dll 可能依赖某些在 WinPE 中未包含的现代 Shell 服务或 COM 组件,导致“固定到任务栏”这一特定功能失效。
功能替代方案‌:
由于 shell32.dll 在 2506 版本中不再提供直接的右键入口,WinPE 用户需改用以下方法固定应用:
拖拽法‌:直接将 .exe 文件或快捷方式拖入任务栏。
运行后固定‌:先启动程序,待任务栏出现图标后,右键点击该运行中的图标进行固定。
命令行/脚本‌:使用 PowerShell 或第三方工具(如 TaskbarCustomizer)通过修改注册表或调用 API 实现固定,绕过 Shell 菜单限制。
回复

使用道具 举报

 楼主| 发表于 2026-11-7 22:29:33 | 显示全部楼层
本帖最后由 熊猫专用 于 2026-11-8 02:05 编辑
熊猫专用 发表于 2026-11-1 14:26
Shell32.dll 有空再研究,因为也是正好在研究输入法时发现的问题,顺手修复了下。 ...

2026.11.7 测试,目前未果。还是一样拖不进。在慢慢解决测试。
2026.11.8 深夜,总算解决问题,明天整理下命令。

点评

PE顽疾,慢慢来  详情 回复 发表于 2026-11-7 22:57
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-11-15 12:43

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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