socket问题(100分)

  • 主题发起人 主题发起人 mengh
  • 开始时间 开始时间
M

mengh

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi中用serversocket和clientsocket做了个最简单socket通信程序,可是server端
连接的时候总是报错
”通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
(10048),on API 'bind'“
是什么原因啊??我是个新手,大家帮帮我啊!谢谢啦!(出错的地方如下)

procedure TchatForm.ListenItemClick(Sender: TObject);
begin
ListenItem.Checked := not ListenItem.Checked;
if ListenItem.Checked then
begin
ClientSocket.Active := False;
ServerSocket.Active := True;
end
else
begin
if ServerSocket.Active then
ServerSocket.Active := False;
end;
end;
 
建议楼主先看看有关网络编程方面的书,一个socket端口只能由一个server绑定(bind)
一次是很基础的常识来的。报这个错误就是说你对同一个端口绑定了多次,简单说就是你
开了多个相同端口的server socket。
 
端口号应该设为1024以后~
>1024,否则容易和已被系统占用端口冲突
 
端口不对
 

Active := True;
之前先False
 
我用过那个例子,本身没错的,你仔细看看你写的代码,在窗体初始化的时候你写代码了吗,你看看那段代码。
 
后退
顶部