大家好,我有个telnet的问题,想问问大家,请知道方法的给我个意见,看我怎么弄.谢谢了用了telnet控件,也已经登录上去了,发一条指令后,也能返回内容。关键是连续发送几条指令,返回的内容的顺序就乱了。(1)---发送指令(指令都已经放到CheckListBox1里了,要发多条指令用for循环)
procedure TMain_Form.BitBtn_ExecClick(Sender: TObject);
var
   i,j: integer;
   ts: string;
begin
  for i:=0 to CheckListBox1.count-1 do
  begin 
    if CheckListBox1.Checked[i]<>'' then
    begin
      ts:=CheckListBox1.Items[i]+#13+#10;
      IdTelnet1.Write(ts); 
    end; 
  end;
end;(2)接收返回信息(IdTelnet 的 DataAvailable事件是自动接收的)
procedure TMain_Form.IdTelnet1DataAvailable(Buffer: String);
begin
    Memo1.Lines.add(Buffer);
end;如果我设断点用F7一步一步调试,所有返回内容(每条指令的返回内容,不是一次返回的,而是分几次回来)最后都能按顺序显示在memo1中;但如果直接用F9执行,在Memo1中返回的信息就会乱,有时还有的指令返回内容还不显示。
有人给我了个主意,说指令不能这样一下都发完了,要等每条指令的返回内容都回来了(虽然返回内容分几次返回,但最后会有一个标志信息是“End of Report”),再发下一条指令,我也觉得这个方法可行,但不知道怎么实现,那位高手能否帮帮我啊。