彩虹显IP的问题

来源:百度知道 编辑:UC知道 时间:2024/06/22 17:30:45
为什么彩虹QQ不能定位国外地区 只能显示市级的 ?

有什么方法可以定位到郡级的?
有比zhaoxueli0286的回答更好的吗?

不能够,显IP的QQ显示好友所在位置的工作原理是:把各IP地址对应的地理位置数据都存在本地硬盘上,显示的时候先取得对方IP,然后查询本地文件里的对应数据,然后显示。 QQ得到IP地址后,对比上传用户的数据,发现其IP属于哪一个地区。如果用户上传的数据不够,IP地址难以分辨归属地。 尝试更换其他QQ显示IP的插件。

请参考如下的QQ显示IP原理分析:

QQ2008版本显IP显隐身制作原理介绍(原创)
2008年03月02日 01:38:47 作者: 小辉
到QQ2008为至,可爱的珊瑚版本显IP显隐身的QQ已经不能用了,前几天下载了比特版本,传美版本,极速版本用了一下,感觉没有珊瑚虫的版本好用,总之用习惯了一种版本,不乐意改变太多.于是抱着这种心态,我于前天下午认真研究了QQ显IP显隐身的原理,自己成功编译出了一款比较满意的显IP显隐身的QQ2008贺岁版本,以满足自己工作和学习的需要.下面我来谈一下显IP显隐身的基本原理.

最初我认为当前的一些显IP的工具,包括大名鼎鼎的FINEPLUS这类软件是在QQ工作时可以拦截了底层的Socket通讯,后来发现,没那么复杂,但我认为如果做成这样子,肯定是一种最有效的办法.

大家的思路是这样子的,由于如果你现在需要和一个QQ好友传输文件或者进行语音聊天或者发送了图片或自定义表情。那么QQ必须知道对方的IP地址和端口信息,这样才能把数据传给对方。所以,QQ内部已经实现了获取IP地址和其他信息的相关函数了。的确如此。而我们只要想办法调用QQ内部的函数。

经过反编译QQ组件之一的CQQApplication.dll中的汇编代码:

027832C7 8B45 F0 mov eax,dword ptr ss:[ebp-10]
027832CA 53 push ebx
027832CB 68 38558302 push CQQAppli.02835538 ; ASCII dwIP
027832D0 50 push eax