以前很少写delphi程序,我现需要向一服务器发送一连串字符串,服务器会根据我发送的字符串分类返回一字符给我,我在Timer1的OnTime事件写了发送程序:(Timer1在程序启动就激活了,Enabled=true) SendStr:='ABCD';
IdUDPClient1.Active:= true;
IdUDPClient1.port:=2003;
IdUDPClient1.Send(SendStr);
procedure TMainForm.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;ABinding: TIdSocketHandle);
var
ReciveStr:string;
Data:TStringList;
begin
Data := TStringList.Create;
adata.seek(0,0);
setlength(ReciveStr,adata.size);
adata.Read(ReciveStr[1],adata.size);
if ReciveStr<>'' then
begin
end;
end;服务器IP为:192.168.116.72
IdUDPClient的属性设置如下:Host:192.168.116.72,Active=true
IdUDPServer的属性设置如下:Bindings:192.168.116.72:2003,DefaultPort:2003,Active=true当 IdUDPServer 的Active=false就不会报错了......报的错误:Socket Error # 10049 Cannot assign requested address.在本机调试通过(127.0.0.1),急啊,各位帮帮我吧,谢谢!
IdUDPClient1.Active:= true;
IdUDPClient1.port:=2003;
IdUDPClient1.Send(SendStr);
procedure TMainForm.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;ABinding: TIdSocketHandle);
var
ReciveStr:string;
Data:TStringList;
begin
Data := TStringList.Create;
adata.seek(0,0);
setlength(ReciveStr,adata.size);
adata.Read(ReciveStr[1],adata.size);
if ReciveStr<>'' then
begin
end;
end;服务器IP为:192.168.116.72
IdUDPClient的属性设置如下:Host:192.168.116.72,Active=true
IdUDPServer的属性设置如下:Bindings:192.168.116.72:2003,DefaultPort:2003,Active=true当 IdUDPServer 的Active=false就不会报错了......报的错误:Socket Error # 10049 Cannot assign requested address.在本机调试通过(127.0.0.1),急啊,各位帮帮我吧,谢谢!
解决方案 »
- idhttp提交验证码
- 刚过完年,问两个问题
- PC通过ARM9(WINCE)实现远程摄像(速度经过大大优化)
- 怎样开辟一个缓冲区?怎样读写缓冲区?
- 重发!再顶!困扰多日的DELPHI+SQL SERVER主从表查询排序问题!
- 如何检测计算机是否配置有声卡?
- 各位:有谁用过北京握奇公司的CPU卡读写器?请进来瞧瞧
- 控件中类似“文件选择”属性的功能如何实现?
- 在dbgrid中显示数据库中查出来的结果,如果时期空的话,就会显示成1899年的日期怎么办?
- 关于delphi中关于word的组件的问题
- 关于数据更新的问题
- 语音modem 用waveinopen 和waveoutopen单独打开都可以,双向打开报错
SendStr:='ABCD';
IdUDPClient1.Host := '192.168.116.72'; //加上这一行试试
IdUDPClient1.Port := 2003;
IdUDPClient1.Active := True;
IdUDPClient1.Send(SendStr);
Bindings:这里应该留空
或者用
Bindings.Clear; 方法清空