用户名: 密码: 免费注册 忘记密码? 网站地图 | 加入收藏 | 设为首页
首页 | 新闻 | 工具 | 系统 | 办公 | 聊天 | 多媒体 | 网页 | 运营 | 平面 | 欣赏 | 数据库 | 程序 | 服务器 | 组网
网页 | 3dmax | Ghost | Windows Xp| Dreamweaver | photoshop | Flash | office | Alexa | Css | QQ | Asp | PHP | Jsp | Access
Flash MX 2004入门 | 网站推广策略 | CorelDRAW入门 | ASP学习 | 网站建设大师功 | Word入门
  iTbulo.com > 学院 > 程序开发教程 > Delphi教程 > Delphi实例教程 > 文章正文
怎样用delphi制作一个IPhunter(独孤剑客的IP猎人)
iTbulo.COM 2006-4-27 佚名()
    很多朋友用过独孤剑客写的IPhunter吧,它是利用在聊天室发图片的原理查找对方IP,其实不仅仅是聊天室,只要有人对你的机器存在访问,就能够抓到他的IP,甚至主机名,在老妖的软件猎鹿人当中也利用了这个原理,在delphi中是很容易实现的,现在我们用delphi来做一个和IPhunter一模一样的软件。

    有人说现在的程序员成了组装工人,其实很有道理,利用控件模块+少量代码就可以实现,delphi 5.0提供了丰富的internet控件,利用TCP/IP 客户端-服务端就可以解决问题。关键的控件是ServerSocket,我们模仿IPhunter的界面用一个button1(按钮),一个combobox1(用于显示),这三个最基本的控件放置到空白窗体上就可以开始写代码了 。

     首先,这个combobox1必须能显示多个IP,我们定一个变量y来累加combobox1.items[y], var y:integer; 我们的思路如下,当ServerSocket活动的port(端口)收到基于TCP/IP协议的连结请求时候,返回对方的IP值,传递给combobox显示出来。由button1控制ServerSocket的激活,也就是打开关闭端口。

     我们在ServerSocket的On ClientConnect事件中加入一下代码 procedure TForm1.ServerSocket11ClientConnect(Sender: TObject; Socket: TCustomWinSocket); begin combobox1.Items.Insert(y,');//加入一条空纪录 combobox1.Items[y]:=socket.RemoteAddress;//获取对方的IP label1.Text:='共捕获'+inttostr(y+1)+'个IP';//用一个标签来显示一共抓了多少IP y:=y+1;//计数变量加1 socket.Close; end; 现在,将button1的caption属性设置为 '开始',在它的单击事件中加入以下代码 procedure TForm1.SpeedButton7Click(Sender: TObject); begin if speedbutton7.Caption='开始' then begin serversocket11.Port:=80;//这句可以在serversocket属性中设定,捕获浏览器的连接 ServerSocket11.Active:=true;//激活端口 speedbutton7.Caption:='停止'; end else begin serversocket11.Active:=false;//关闭端口 speedbutton7.Caption:='开始'; combobox1.Clear;//结束捕获,清空历史信息 y:=0;//计数变量复位 end; end; 现在一个IPhunter基本就可以使用了,这只是很简单原型,加上您自己精心制作的界面,就是一个网络灰客工具了,这个功能也集成到了猎鹿人里面,这里说到的只是ServerSocket最基本的一点功能而已,加上ClientSocket就可以做一个聊天工具,只用ClientSocket可以做一个和代理猎手一样的扫描软件,这些在老妖以后的文章中陆续介绍。 下次预告 怎样用delphi制作OICQ工具,匿名信息,查IP,信息炸弹等等....
文章搜索
相关资讯
相关文章 相关下载
图像输出组件的制作
通过调用API确定MEMO控件中的当前行和列
用delphi编写医院的复杂报表
使用Delphi获取系统信息
Delphi使用ABC
焦点信息