求助大神,怎么解决 CTF 加载程序 和 ChsIME.exe 占用 CPU 问题? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Greatshu
V2EX    问与答

求助大神,怎么解决 CTF 加载程序 和 ChsIME.exe 占用 CPU 问题?

  •  
  •   Greatshu 34 天前 1174 次点击
    这是一个创建于 34 天前的主题,其中的信息可能已经有所发展或是发生改变。

    系统是 Windows 11 ,之前 Windows 10 也出现过有同样的问题。

    现象是开机一段时间,CTF 加载程序( ctfmon.exe ) 和 ChsIME.exe 就开始占用大约 10%的 CPU ,其中 ChsIME.exe 有两个同名进程,其中一个进程占用 0%CPU ,另一个进程占用较多。我用的是笔记本电脑,风扇会狂转。任务管理器结束占用较多的 ChsIME.exe 或者 ctfmon.exe 后会好一段时间,一段时间后现象反复。

    1762960907134.png

    1762961304833.png

    前两天重装了 Windows 11 ,仍然无法解决,使用 procmon 单独监测 ChsIME.exe 发现它一直在反复读取一个注册表,读取频率极高,根据日志估算,每秒约 6000 次。日志文件如下,Logfile.CSV 。

    https://gofile.io/d/2iEnR9

    1762961506619.png

    "23:30:42.5128945","ChsIME.exe","15120","RegQueryKey","HKLM","SUCCESS","Query: HandleTags, HandleTags: 0x0" "23:30:42.5129152","ChsIME.exe","15120","RegOpenKey","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE","SUCCESS","Desired Access: Query Value" "23:30:42.5129359","ChsIME.exe","15120","RegQueryValue","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE\LaunchUserOOBE","NAME NOT FOUND","Length: 16" "23:30:42.5129521","ChsIME.exe","15120","RegCloseKey","HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE","SUCCESS","" 

    procmon 单独监测 ctfmon.exe 没有发现明显问题,日志文件如下,ctfmonLogfile.CSV 。

    https://gofile.io/d/2iEnR9

    系统版本如下

    1762962629893.png

    第 1 条附言    34 天前

    感谢@zk8802 的分析和 @youngteam99 的提醒,基本确定是 KeePass 安全桌面问题

    https://keepass.info/help/kb/sec_desk.html#ime

    开启 KeePass 安全桌面:

    https://i.imgur.com/PNzJJf5.mp4

    关闭 KeePass 安全桌面:

    https://imgur.com/dYRQYYY.mp4

    18 条回复    2025-11-13 17:31:16 +08:00
    LucasChang
        1
    LucasChang  
       34 天前
    标记一下,蹲一位大佬来给大伙上课
    Donduck
        2
    Donduck  
       34 天前
    最接近的案例:
    https://bbs.kafan.cn/thread-2243657-1-1.html
    其中一个 ChsIME 理应是 SYSTEM 权限
    zk8802
        3
    zk8802  
       34 天前
    能上传一下你的 shell32.dll 吗?这个文件在 C:\Windows\System32 下面。

    读取 LaunchUserOOBE 是 shell32.dll 中的 ShowShellInfrastuctureCriticalFailureDialog 函数完成的,但是根据我本地的 shell32.dll 中的实现,读取 LaunchUserOOBE 的逻辑在每个进程中只应该被调用一次(因为有一个 flag 控制该逻辑是否已经执行过)。反复读取这个注册表键好像和我看到的实现不一致呀……

    另外你可以用 Process Explorer 或者其它工具看一下 ChsIME.exe 进程里面有没有加载非微软的 DLL ;如果有的话,卸载相关软件试一下。
    zk8802
        4
    zk8802  
       34 天前
    我错了。调用点应该是在 msctf.dll 里面。不需要 shell32.dll 了。
    zk8802
        5
    zk8802  
       34 天前
    简单看了一下 msctf.dll ,调用点应该是 IsUserOOBE ,但是问题的根源有可能是 TF_Notify 被反复调用,或者 CAlpcPort 被反复调用(我还不理解这个类是做什么的),纯静态分析的话太浪费时间了。楼主如果有兴趣找到问题根源,可以用 ETWController ( https://github.com/Alois-xx/etwcontroller/)记录几秒钟的 ETW trace 发上来,我可以继续研究一下。
    yiyiwa
        6
    yiyiwa  
       34 天前
    我的笔记本也有同样的问题,最后直接换一个输入法
    Greatshu
        7
    Greatshu  
    OP
       34 天前
    @zk8802 #5 感谢大佬的分析,暂时没有复现,下次遇到我用 ETWController 试试
    Greatshu
        8
    Greatshu  
    OP
       34 天前
    我的电脑上目前安装的软件有这些,除此之外还有 v2rayN v7.16.1

    ![1763001632327.png]( https://youke1.picui.cn/s1/2025/11/13/691544f6aa86f.png)

    型号是联想拯救者 Y7000 2019
    Greatshu
        9
    Greatshu  
    OP
       34 天前
    @yiyiwa #6 你好,麻烦看一下 8 楼,有安装类似的软件吗。我是重装的系统,安装了这几个软件就出现这个问题了。
    yiyiwa
        10
    yiyiwa  
       34 天前
    我的是 DELL ,然后 vmware workstation, chrome ,VC 库有的。还有一些其它的。

    反正网上的办法都折腾过了,不灵。

    因为用五笔,最后直接用 冰凌 了。
    youngteam99
        11
    youngteam99  
       34 天前   1
    @Greatshu 看看是不是 keepass 的问题,https://keepass.info/help/kb/sec_desk.html#ime
    zk8802
        12
    zk8802  
       34 天前
    楼主额外安装输入法了吗?
    Greatshu
        13
    Greatshu  
    OP
       34 天前
    @youngteam99 #11 感谢,我试试能不能复现
    Greatshu
        14
    Greatshu  
    OP
       34 天前
    @zk8802 #12 没有,用的系统自带的微软拼音
    Greatshu
        15
    Greatshu  
    OP
       34 天前
    @youngteam99 #11 成功复现,基本确定是 KeePass 安全桌面问题
    开启 KeePass 安全桌面:
    https://i.imgur.com/PNzJJf5.mp4

    关闭 KeePass 安全桌面:
    https://imgur.com/dYRQYYY.mp4
    youngteam99
        16
    youngteam99  
       34 天前
    @Greatshu https://sourceforge.net/p/keepass/discussion/329220/thread/5637b4a2f9/?limit=250 ,开发者说貌似是微软的问题,不知道是微软还是 KeePass 的问题
    Greatshu
        17
    Greatshu  
    OP
       34 天前
    @youngteam99 #16 我猜是微软锅更大,keepass 我从 win7 就开始用了,win7 ,8 ,8.1 ,都没有问题,后来出现过一段时间无法在软件中输入中文,不知道哪个版本后又修好了
    zk8802
        18
    zk8802  
       34 天前 via iPhone
    @Greatshu 谢谢排查!我明天调试一下 Keepass 安全桌面。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2847 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 66ms UTC 14:28 PVG 22:28 LAX 06:28 JFK 09:28
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86