火
火鹰
Unregistered / Unconfirmed
GUEST, unregistred user!
服务器端在接收到客户命令Comeontab后执行下列语句:
Ccomeontab:
begin
AThread.Connection.ReadBuffer(gamedata, sizeof(gamedata));
arraytab.playercount:=arraytab.playercount+1;
if gamedata.number=0 then
begin
arraytab.player[0]:=gamedata.Player;
arraytab.lab1:=gamedata.chariId;
end else
begin
arraytab.player[1]:=gamedata.Player;
arraytab.lab2:=gamedata.chariId;
end;
//发送第一条命令
ctext.command:=Cchangeuserinf;
Athread.Connection.WriteBuffer(ctext,sizeof(ctext));
//发送第二条命令
ctext.command:=CrefTab;
Athread.Connection.WriteBuffer(ctext,sizeof(ctext));
end;
客户端的响应:
procedure Ttcpthread.Execute;
begin
while not Terminated do
begin
IdTCPClient.ReadBuffer(ctext, sizeof(ctext));
case ctext.command of
Creftab:begin
frmmain1.label1.caption:='2222222222222222';
end;
Cchangeuserinf: begin
frmmain1.Label1.Caption:='111111111111111';
end;
end; //case
end;
end;
问题,为什么客户端总是第一条命令可以得到执行,而第二条命令得不到执行呢?请各位高手指点。
令求Idtcpserver,Idtcpclient控件的中文教程谢谢。。。
Ccomeontab:
begin
AThread.Connection.ReadBuffer(gamedata, sizeof(gamedata));
arraytab.playercount:=arraytab.playercount+1;
if gamedata.number=0 then
begin
arraytab.player[0]:=gamedata.Player;
arraytab.lab1:=gamedata.chariId;
end else
begin
arraytab.player[1]:=gamedata.Player;
arraytab.lab2:=gamedata.chariId;
end;
//发送第一条命令
ctext.command:=Cchangeuserinf;
Athread.Connection.WriteBuffer(ctext,sizeof(ctext));
//发送第二条命令
ctext.command:=CrefTab;
Athread.Connection.WriteBuffer(ctext,sizeof(ctext));
end;
客户端的响应:
procedure Ttcpthread.Execute;
begin
while not Terminated do
begin
IdTCPClient.ReadBuffer(ctext, sizeof(ctext));
case ctext.command of
Creftab:begin
frmmain1.label1.caption:='2222222222222222';
end;
Cchangeuserinf: begin
frmmain1.Label1.Caption:='111111111111111';
end;
end; //case
end;
end;
问题,为什么客户端总是第一条命令可以得到执行,而第二条命令得不到执行呢?请各位高手指点。
令求Idtcpserver,Idtcpclient控件的中文教程谢谢。。。