Class: | FTP_SERVICE |
Description: | Change the current directory on the FTP Server |
Type | Character |
Direction | Input |
LPARAMETERS INP lcNewDir LOCAL fResult, lcTempDir, llResult IF This.OpenFTPConnection(This.cCurrentDir) && Open an FTP Handle llResult = .F. lcTempDir = SPACE(MAX_PATH) =This.BeforeChangeFTPDirectory(@m.lcNewDir) fResult = FtpSetCurrentDirectory(This.nConnect_Handle, @m.lcNewDir) =This.GetExtendedError() IF m.fResult = 1 fResult = FtpGetCurrentDirectory(This.nConnect_Handle, @m.lcTempDir, MAX_PATH) =This.GetExtendedError() IF m.fResult = 1 This.cCurrentDir = LEFT(m.lcTempDir,AT(CHR(0),m.lcTempDir)-1) llResult = .T. ENDIF ENDIF =This.AfterChangeFTPDirectory(@m.lcNewDir,m.fResult) =IIF(This.lMultiOperations,.T.,This.CloseFTPConnection()) && Close FTP Handle RETURN m.llResult ENDIF RETURN .F.