socket 问题
写的一个程序,,分客户端和服务的,用的是TClientSocket和TServerSocket元件,客户端页面有一button发送按钮 单击事件代码如下:
GetIpAndPort();----设置要连接到的服务器IP地址和端口..(自己写的,从外部ini文件获取)
ClientSocket.Active:=true;
if connectFlag then
begin
ClientSocket.Socket.sentText('hello');
end;
其中connectFlag为一public变量,在ClientSocket的onconnect事件里设置 connectFlag:=true;
在窗体的onshow 事件里 设置 connectFlag:=false;
在ClientSocket的OnError 事件里写了一句代码 showmessage(‘服务器没开!’);
服务器窗体中我放了个ServerSocket 元件,在Form的onshow事件里设置了 ServerSocket.active:=true;
然后在ServerSocket的onClientRead 事件里写: showmessage(Socket.ReceiveText);
但是现在出现了2个问题不知道如何解决,想了一天了..
问题1..在开了服务器的状态下,点击客服端的发送按钮,第一次点击时服务器总是收不到消息,而接下来的每次都收的到, 怎样才能在第一次点击时服务器就收到消息..是不是我的代码哪个地方没写..
问题2..在没开服务器的状态下,点击客服端的发送按钮,弹出对话框“服务器没开”,但是关闭了对话框之后,又弹出错误提示对话框,关闭这个对话框,程序也被关了..我要求关闭onError事件弹出的对话框后,程序没有关闭..
我是第一次用这东西,对Socket的API 不了解,
求各位大鸟帮忙解决..