作者foxkid (只有冰与雪)
看板Programming
标题Re: [讨论] 防广告视窗怎麽做的?
时间Thu Jan 19 09:38:10 2012
※ 引述《tropical72 (蓝影)》之铭言:
: ※ [本文转录自 C_and_CPP 看板 #1F3PEVvk ]
: 作者: tropical72 (蓝影) 看板: C_and_CPP
: 标题: [讨论] 防广告视窗怎麽做的?
: 时间: Wed Jan 11 21:50:19 2012
: 这是一份概念、技术、兴趣的讨论文章。
: 前言
: 1. Win32 API 有没有办法做到,当系统新增某个 process 时, 有办法
: 主动通知我的 ap 再去执行吗? (call back 方式, 非 polling 方式)
: 或换个问法:Win32 API 能否以 callback 方式监控 processes ?
如果把条件缩小到监控IE有没有新增某个process的话,可以实作一个user mode的
debugger,对IE作监控。呼叫WaitForDebugEvent注册一个callback,
CREATE_PROCESS_DEBUG_EVENT就是你要的了。只是那个时间点可能window还没出来,
但是你能拿到PID,所以可以新增一个thread,过一小段ms之後去检查,咖差。
不过有个问题,IE不一定是自己弹出的IE,可能透过COM绕到service又回过来起了一个IE
可以拿procmon先看一下,如果是这样那上述方法就不行了。
全系统监控process新增,一般用的方法是写driver,
呼叫PsSetCreateProcessNotifyRoutineEx,此时也一样window还没出来,之後blahblah
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.192.35.10
1F:推 tropical72:感谢 f 大提供的宝贵意见,感谢 !! 180.177.69.239 01/25 15:19