一点疑惑:有关窗口审计问题

badguy2002 2004-06-07 11:13:25
rt,做一个关于窗口审计的程序:审计用户在某个时刻桌面上所打开的窗口标题,窗口对应的进程名等信息。当然,为了便于用户理解和查看,诸如系统窗口,隐藏窗口等窗口都需要过滤掉,尽量只留一些用户窗口信息。程序功能现已基本达到,但是有一点问题,当用户点击某菜单,弹出菜单窗口时,也将被审计程序审计到,实际上这个信息是没有什么意义的,而且此时得到的窗口标题为空,也不利于用户理解,这种窗口信息也需要过滤掉。我是通过得窗口的style对窗口进行过滤的,目前过滤条件是WS_VISIBLE,为了过滤掉菜单窗口信息,我试过了很多方法,发现只有添加过滤条件WS_POPUP,才能到达目的,但是如果添加了这个条件,那么正常的弹出式对话框也将被过滤掉(因为它们也具有WS_POPUP样式)。所以请教一下,如果才能过滤掉菜单窗口,且保证通常的弹出式窗口不被过滤掉。当然不局限于通过窗口style进行过滤了,只要能够达到目的,其它方法亦可,谢谢了!!!
...全文
70 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
badguy2002 2004-06-25
  • 打赏
  • 举报
回复
自己搞定,还是散分,呵呵
badguy2002 2004-06-08
  • 打赏
  • 举报
回复
能详细些么?我指的菜单窗口不是指菜单栏窗口,而是鼠标点击菜单某项后弹出的子菜单窗口,请问这样的窗口的class name是什么呢?用spy++看不到,因为是弹出式窗口...
badguy2002 2004-06-08
  • 打赏
  • 举报
回复
不一定为空的,有些菜单菜单窗口为空,有些就不为空,比如我所遇到的Access 2000的子菜单窗口的标题就是对应的主菜单名,比如"工具"子菜单的标题就是"工具",当然也有一些就是空。但是即使都为空,也不能以此为判断啊,因为有些窗体标题也为空,比如flashget最小化后,只有一个进度透明小窗口悬浮在桌面上,它的标题也为空,但是总不能把它也过滤掉吧,它也是用户打开的一个应用程序的窗口啊!
windywalk 2004-06-08
  • 打赏
  • 举报
回复
而且此时得到的窗口标题为空,你不想要再抛弃,
不一定要一下达到目的吧
flyelf 2004-06-07
  • 打赏
  • 举报
回复
get the windows's class name

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧