服务端接受的是乱码
发送的代码:
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
buffer:array of byte;
ls_sedstr:string;
li_len:integer;
begin
ls_sedstr:='h';
li_len:=length(ls_sedstr);
setlength(buffer,li_len);
copymemory(@buffer[0],@ls_sedstr[1],li_len);
for i:=0 to ServerS.Socket.ActiveConnections-1 do
begin
ServerS.Socket.Connections[i].SendBuf(buffer,li_len);
end;
end;
接受的代码:
procedure TForm1.ClientSRead(Sender: TObject; Socket: TCustomWinSocket);
var
buffer:array of byte;
ls_recstr:string;
li_len:integer;
begin
li_len:= Socket.ReceiveLength;
setlength(ls_recstr,li_len);
setlength(buffer,li_len);
Socket.ReceiveBuf(buffer[0],li_len);
copymemory(@ls_recstr[1],@buffer[0],li_len);
showmessage(ls_recstr);
end;
仅仅作了一个测试的例子,
结果ls_recstr是乱码,请问大家如何解决,那儿出错?