内容如题!关键是如何监听返回值?最好有对应的例子.万分感谢.
解决方案 »
- 调用DLL里的frame窗体报这个错误: Exception EReadError in module rtl70.bpl at 00034B6B
- [讨论]邪门的问题,为什么会这样啊??!!cbc & delphi....
- 高分请教treeview的动态加载问题!!!答者都有分
- 求高手!!!急!急!急!!!!
- 我对CSDN的建议
- 谁有erp的源代码(1000分+1000元人民币收购)
- 怎么在右键按下的事件前面触发一个左键按下的事件
- ADO数据库查询问题?
- 真奇怪,请问TDateTime到底是什么?我怎么不能用TDateTime::方法?
- 为什么使用<程序员大本营2000>(正版)中的升级包不能对我的Delphi5升级
- 图片不存于数据库中
- :( 祈祷和我相爱的人在一起.................
另外,什么叫监听返回值啊
sBuffer: string;Begin//建一个TWinSocketStream对象实例,设置连接超时SSteam: = TWinSockStream.Create (ClientSocket.Socket, 60000);Try //获取和操作命令,直到连接断开或者线程终止While (not Terminate) and (ClientSocket.Active) dobegintryGetNextRequest (sBuffer);//将请求写回到ServersStream.Write (sBuffer, Length (sBuffer) + 1);…Exceptif not(Except Object is EAbort) then//处理一些自定义的异常情况Synchronize(HandleThreadException);end;end;finallysStream.Free;end;End;这个线程的对象是如何生成的,在哪个地方设置远程IP和端口号,还有到底如何接收服务端的返回值?
我的代码
procedure SocketThread.Execute;
var
tClient : TClientSocket;
begin
tClient := TClientSocket.Create(nil);
try
tClient.ClientType := ctBlocking;
tClient.Port := strtoint(form1.Edit2.text);
tClient.Address := form1.Edit1.Text;
tClient.Active := true;
tClient.Socket.SendText(form1.Edit3.Text+ ';' +form1.Edit4.Text + ';' + form1.Edit5.Text);
finally
tClient.Free;
end;
end;
客户端可以发送,但是不知道如何接收服务器的返回值.最好给个例子.
非阻塞响应read,write事件就可以
阻塞的话,需要用TWinSockStream