qq三国开发脚印

来源:互联网 发布:免费远程mysql数据库 编辑:程序博客网 时间:2024/04/28 07:21

qq三国在程序运行时运行了tessafe.sys,此为驱动层程序,屏蔽了很多函数,常规方法不能获取qq三国的窗口句柄,我利用以前开发过的一个程序逐步测试,看看到底在它屏蔽了哪些函数,以及如何解决。

一、OpenProcess函数

    本来这个函数用在两个地方:

    (一)一个地方是已知某个进程的ID,通过ID来获取这个进程的名称。

    (二)另一个地方是遍历系统中所有运行的进程。

    但是这个函数对qq三国不起作用。

    解决办法:

    (一)用此函数不能打开QQSG.exe进程,但是,利用钩子把一个dll注入到QQSG.exe中,在这个dll中可以使用OpenProcess函数,这样就可以获取QQSG.exe这个进程的名称了。

    (二)原来遍历进程用到EnumProcessModules函数,这回改用CreateToolhelp32Snapshot函数,这个函数没有被屏蔽掉,这样可以绕过OpenProcess,直接遍历系统中所有运行的进程。

    二、QQSG.exe不但屏蔽了一些函数,连钩子程序挂接WH_SHELL时,都不能像一般程序那样发出消息,所以挂钩函数对QQSG.exe没有太大意义,干脆不用钩子函数了。因为可以直接得到QQSG.exe主窗口的句柄,通过这个句柄可以干很多事,所以还是简单点,直接操作QQSG.exe窗口得了。

原创粉丝点击