public void StartFTPListeing(FTPRcvObj rcvObj, string savePath) { try { if (mFtpServer == null || !mFtpServer.isListening()) { string path; if (savePath != null && !savePath.Trim().Equals("")) path = savePath; else path = string.Format(WeDoCommon.ConstDef.MSGR_DATA_FILE_DIR, ConfigHelper.Id); StateObject stateObj = new StateObject(); mFtpServer = new FtpServerMgr(ConfigHelper.SocketPortFtp, path); mFtpServer.SocStatusChanged += DisplayFTPStatusOnStatusChanged; mFtpServer.ReadyToListen += ProcessOnFTPReadyToListen; mFtpServer.FTPReceivingProgressed += ProcessOnFTPReceivingProgressed; mFtpServer.FTPReceivingFinished += ProcessOnFTPReceivingFinished; mFtpServer.FTPReceivingCanceled += ProcessOnFTPReceivingCanceled; mFtpServer.FTPReceivingFailed += ProcessOnFTPReceivingFailed; mFtpServer.DoRun(stateObj); } else { OnFTPReadyToListen(new SocStatusEventArgs(new StateObject())); } } catch (Exception e) { Logger.error("StartFTPListeing 에러 : " + e.ToString()); } }
public void CancelFTPReceiving(StateObject stateObj) { if (mFtpServer != null) mFtpServer.CancelReceiving(stateObj); }
public void ProcessOnFTPReceivingProgressed(object sender, FTPStatusEventArgs e) { try { if (this.formKey.Equals(e.Status.Key)) { Logger.info(string.Format("파일수신진행 ProcessOnFTPReceivingProgressed[{0}]",e.Status.Data)); ProgressBarFileRcv.Value = e.ProgressIndex; closeOnNoResponseTimer.Stop(); stateObj = e.Status;//다운받는 파일의 상태정보 if (e.ProgressIndex == 0 || e.ProgressIndex == 100) setProgressVisible(true); } } catch (Exception ex) { Logger.info(ex.ToString()); } }