本帖最后由 zx900930 于 2012-3-19 23:22 编辑
今天特意试了一下,发现cfp.exe和cmdagent.exe都存在的情况下也有一定几率不显示托盘区图标, 测试了一上午给出个参考解决方案:
分析:
cfp.exe是毛豆的用户界面(GUI),程序窗体和图标显示由它控制.
cmdagent.exe是服务核心(Core Service), 有它的话防火墙D+都在激活状态, 但是没有图标.
要正常工作并且显示图标的话, 两个都是必要的, 但是不幸的是两个都启动的情况下却不一定有图标.
经过几轮测试, 发现问题可能出在cfp.exe的启动上,只要推迟它的启动就能解决问题.
(COMODO官方论坛总说这是Windows的BUG,我觉得要是COMODO把它的加载机制修改一下绝对能彻底解决这个问题,因为其它主流杀软或者HIPS很少出现这个BUG.况且有人刚格式化装系统再装COMODO就出了这个BUG,证明此BUG在没有第三方软件的情况下也能出现)
在此不讨论BUG是谁的, 只讨论怎么解决:最好的办法是延缓cfp.exe的启动时间或者在完成开机后再运行一次cfp.exe(可以利用计划任务或者别的什么东西都行)
解决步骤:
1.打开注册表,删除[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]下COMODO的启动项
(如果你实在害怕cfw.exe启动晚了不安全可以跳过这步,不过会导致每次开机都显示COMODO的主界面)
2.Win+R, 输入taskschd.msc打开计划任务. 新建一个计划任务
名字随便,我写的COMODO Tray Icon
勾选"使用最高权限运行"和"隐藏"
3.触发器选第二项"打开会话时"
4.操作选"启动程序"
路径填"C:\Program Files\COMODO\COMODO Internet Security\cfp.exe" (以CIS为例,CFW路径稍有变化)
启动参数填-h
5.条件我选择的是当连接到任意网络时, 如果不选的话至少在我的机子上cfp.exe启动还是太早,依旧不显示图标 , 记得取消空闲、电源那一块的勾
6.设置选中前三项
完成重启即可, 虽然托盘图标可能加载的比较晚,但是总比不出来好.
以上内容仅适用于cmdagent.exe和cfp.exe均正常启动的情况.如果cmdagent.exe无法正常启动看下面
今天给一台新机器装CIS套, 安装一切正常, 就是怎么也不显示托盘图标
查看了N个帖子, 重启N次, 重装CIS N次均无法解决, 打开任务管理器一看, cfp.exe正常, cmdagent.exe不见了
(原来cmdagent.exe不开机启动! 英文官网下的CIS安装包, MD5:4079DE37494A3E8D196E7861C73A5DD6,查看服务项里cmdagent.exe是"自动",不知是不是我RP太差)
知道问题就好办了
打开注册表找到
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
自行添加一个启动项
名字叫
"COMODO Tray Icon"
值改为
"C:\Program Files\COMODO\COMODO Internet Security\cmdagent.exe"即可
不愿意手动改的直接导入下面这个reg即可
reg里的内容:- Windows Registry Editor Version 5.00
- [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
- "COMODO Tray Icon"=""C:\\Program Files\\COMODO\\COMODO Internet Security\\cmdagent.exe""
复制代码 再重启一看, 问题解决!
|