当前位置:主页>仓库管理软件> 列表

clientsocket有没有类似的函数啊 找进销存

财务软件版1楼: indy有个
AThread.Connection.ReadLn(#13#10#13#10, 100);

clientsocket有没有类似的函数啊?谢谢!

2楼: 就是一直read直到遇到#13#10#13#10。 如进销存

3楼: 就是一直clientsocket read直到遇到#13#10#13#10。

4楼: 好像木有,不过可以自己模拟一个哦

5楼: //读取一行命令行,以#13#10结尾
function ReadLine(Buffer: PChar; const S: TSocket; const DelEOL: BOOL): Integer;
var
RecvLen: Integer;
Buf: array[0..0] of Char;
begin
Buf[0] := #0;
Result := 0;
RecvLen := WinSock2.recv(S, Buf, SizeOf(Buf), 0);
while (RecvLen > 0) do begin
Result := Result + RecvLen;
if Buf[0] <> #0 then Buffer[Lstrlen(Buffer)] := Buf[0];
if Buf[0] = LF{#10} then Break;
Buf[0] := #0;
if Result = 1025 then Break;
RecvLen := WinSock2.recv(S, Buf, SizeOf(Buf), 0);
end;
if DelEOL then begin
if Buffer[lstrlen(Buffer) -1] = #10 then Buffer[lstrlen(Buffer) - 1] := #0;
if Buffer[lstrlen(Buffer) -1] = #13 then Buffer[lstrlen(Buffer) - 1] := #0;
end;
end;
var
buffer: array[0..1024] of Char;
Socket: TSocket;
if ReadLine(Buffer, Socket, True) > 0 then
begin
CmdStr := StrPas(Buffer);
end;

6楼: procedure TForm1.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
var
buf: array[0..0] of char;
begin
Socket.ReceiveBuf(buf, SizeOf(buf));

TCustomWinSocket 和上面一样

财务软件版7楼: 模拟的我自己已经写了一个,散分。