我需要读取电子设备发送的信息(使用 UDP 协议)。我在 Delphi 7 中使用 Indy 组件(版本 9)时遇到问题。您可以在下面看到我的代码。
procedure TForm1.Button1Click(Sender: TObject);
var
buffer: Array of Byte;
bytes_received: integer;
begin
SetLength(buffer, 36);
IdUDPClient1.Host:='192.168.1.1';
IdUDPClient1.Port:=49152;
IdUDPClient1.BufferSize:=36;
IdUDPClient1.Active:=True;
IdUDPClient1.ReceiveTimeout:=50;
bytes_received:=IdUDPClient1.ReceiveBuffer(buffer,Sizeof(buffer));
IdUDPClient1.Active:=False;
end
“bytes_received”的输出值为 0,显然,“buffer”的内容不是我所期望的……我做错了什么?
提前致谢,
伊莫诺