서버에서 버튼을 누르면 클라이언트에 표출을 하는데 버튼을 3번 클릭하면 클라이언트가 죽어 버려여 아마도 메모리 덤프쪽 같은 생각이 들기는 하는데 어케 해야 할지
제발 많은 도움 부탁드립니다.
서버에서 데이타를 이렇게 보내고요
procedure TForm1.Button2Click(Sender: TObject);
var
i : integer;
begin
send_data.msgno := '20080';
send_data.data := '세상에서 가장 밝은 목소리로 항상 내아침을 깨워주는 사람그렇게시작하는너에하';
for i := 0 to 99 do
begin
serversocket1.Socket.Connections[0].SendBuf(send_data, sizeof(send_data));
end;
end;
클라이언트에서 이렇게 받아서 처리를 합니다.
procedure TForm1.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
var
i : integer;
msgno : string;
data : array [0..79] of char;
begin
clientsocket1.Socket.ReceiveBuf(temp_buf, sizeof(temp_buf));
while temp_buf.data <> '' do
begin
msgno := copy(temp_buf.data,1,5);
if msgno = '20080' then
for i := 0 to sizeof(receive_data) do
begin
data[i] := temp_buf.data[i];
end;
listbox3.items.add(copy(data,6,sizeof(data)));
move(temp_buf.data[i], temp_buf, sizeof(temp_buf));
end;
FillChar(data[0], sizeof(data), 0);
FillChar(temp_buf.data[0], sizeof(temp_buf.data), 0);
end;
end