Skip to content

记腾讯微信输入法导致 WPF 应用卡住 窗口无法激活和显示

Updated: at 23:10,Created: at 23:10

本文记录我远程一位老师的设备,这位老师使用的是 Win7 Sp1 系统,现象是 WPF 应用的窗口无法激活,在 user32 的 SetForegroundWindow 或 NtUserShowWindow 方法卡住

我收集到了多个进程的卡住的 dump 文件,分析到卡住有两个不同的堆栈

堆栈1:

user32.dll!_NtUserShowWindow@8() 未知
[托管到本机的转换]
> PresentationFramework.dll!System.Windows.Window.ShowHelper(object booleanBox = false) 行 3293 C#
PresentationFramework.dll!System.Windows.Window.Hide() 行 1358 C#
业务代码

堆栈2:

> user32.dll!_NtUserCallHwndLock@8() 未知
user32.dll!_SetForegroundWindow@4() 未知
[托管到本机的转换]
PresentationFramework.dll!System.Windows.Window.Activate() 行 1467 C#
业务代码

从进程模块上可以看到有微信输入法的以下模块注入:

复现步骤:

反复进入可能会激活显示窗口和隐藏窗口的逻辑即可

解决方法:

卸载腾讯微信输入法

卸载完成之后,重启进程即可修复

相关问题: 记微信截图导致 WPF 应用卡住 窗口无法激活问题

更多技术博客,请参阅 博客导航


知识共享许可协议

原文链接: http://blog.lindexi.com/post/%E8%AE%B0%E8%85%BE%E8%AE%AF%E5%BE%AE%E4%BF%A1%E8%BE%93%E5%85%A5%E6%B3%95%E5%AF%BC%E8%87%B4-WPF-%E5%BA%94%E7%94%A8%E5%8D%A1%E4%BD%8F-%E7%AA%97%E5%8F%A3%E6%97%A0%E6%B3%95%E6%BF%80%E6%B4%BB%E5%92%8C%E6%98%BE%E7%A4%BA

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。 欢迎转载、使用、重新发布,但务必保留文章署名 林德熙 (包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我 联系