求救:想利用线程监听其他电脑IO端口的UDP包,如何实现呢?

iyou997 2009-07-03 07:39:14
问题1:如何监听其他电脑IO端口;

问题2:如何解析UDP包。

谢谢啊
...全文
59 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
iyou997 2009-07-05
  • 打赏
  • 举报
回复
重复问题:

如何读取其他电脑端口的UDP包??
iyou997 2009-07-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 gyk120 的回复:]
UDP包监听可以通过winpcap嗅探实现
[/Quote]

监听端口的UDP包,能详细点不?
我是个新手菜鸟,多谢了
gyk120 2009-07-04
  • 打赏
  • 举报
回复
UDP包监听可以通过winpcap嗅探实现
iyou997 2009-07-04
  • 打赏
  • 举报
回复
本人用TIdUDPServer组件,用如下代码,不知道能否实现。
---请高手们不吝赐教!

var UDPServer_s:Integer;

//****监听
procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var t:String;
begin
adata.Position:=0;
setlength(t,adata.size);
adata.Read(t[1],adata.Size);
memo1.Lines.Add(t);
end;

procedure TForm1.Button1Click(Sender: TObject);
var wsData : WSAData;
addr : sockaddr_in;
t : string;
begin
WSAStartup($0101,wsData);
UDPServer_s := socket (AF_INET,SOCK_DGRAM,IPPROTO_UDP);
t:='abc';
addr.sin_family := AF_INET;
addr.sin_port := htons(StrToInt(Trim(Edit2.Text)));
addr.sin_addr.S_addr := inet_addr('180.64.92.14');
sendto(UDPServer_s,t[1],length(t),0,addr,sizeof(addr));end;

procedure TForm1.Button2Click(Sender: TObject); //
begin
WSACleanup();
end;
iyou997 2009-07-03
  • 打赏
  • 举报
回复
我的邮箱loin999@sina.com
各位高手多帮忙啊,谢谢

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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