Q&A

  • [질문] 인디 ftp서버의 클라이언트 연결 닫기 조언 구합니다. 소스참조
환경 D7 , 인디 10.1.5

  인디ftp서버에 연결되어 있는 클라이언트 연결닫기.
아래와 같이 하면 파일 전송이 없는경우 정상적으로 종료 됩니다.

문제는 파일이 전송중인 클라이언트가 있으면 종료가 되지 않는것인데요
이런문제 해결을 아시는분은 조언 부탁 드립니다.

  //IdFTPServer1.Active := true; <=이것을 풀고하면 행이 걸려서 더이상 진행이 안됩니다.
  list := idftpserver1.contexts.LockList;
  try
    for p:=0 to list.count-1 do
    begin
      context := TIDcontext(list[p]);
      Context.Connection.IOHandler.WriteBufferClear;
      Context.Connection.IOHandler.InputBuffer.Clear;
      context.Connection.IOHandler.Close;
      context.Connection.Socket.Close;
      context.Data:=nil;
      context.Data.Free;
      context.connection.Disconnect;
    end;
  finally
    IdFTPServer1.Contexts.UnlockList();
    //IdFTPServer1.Active := true;
  end;
0  COMMENTS