Searches the specified directory of the given FTP session. File and directory entries are returned in the sFile string. This function lists both files and directories.
WebAPI.bdh
WebFtpFindFirstFile( in hFtp : number, in sSearchFile : string allownull, out sFile : string, in nMaxFile : number optional, out nAttribute : number optional): boolean;
true for the request if the directory enumeration was started successfully
false otherwise
Parameter | Description |
---|---|
hFtp | Valid handle to an FTP session. This handle must have been returned from a previous call to WebFtpConnect. |
sSearchFile | String that specifies a valid directory path or file name for the FTP server's file system. If the value of sSearchFile is NULL or if it is an empty string, it will find the first file in the current directory on the server. |
sFile | Parameter that receives the name of the file or directory |
nMaxFile | Optional: Specifies the maximum length of the string to put into sFile |
nAttribute |
Optional: Parameter that receives one or more of the following attribute flags:
|
// Connect to the ftp server and list the root directory // 1) using WebFtpFindFirstFile, WebFtpFindNextFile in loops // 2) using only the command WebFtpListDirectory dcltrans transaction TWebFtpListDir var hFtp : number; sFileName : string(MAX_PATH); nAttribute : number; nFiles : number; bOk : boolean; begin WebFtpConnect(hFtp, "standardhost", WEB_PORT_FTP, "", ""); nFiles := 0; // Custom directory list bOk := WebFtpFindFirstFile(hFtp, "", sFileName, MAX_PATH, nAttribute); while bOk do Printwrite(sFileName + ); write(" " + ); write(nAttribute); writeln; nFiles++; := nFiles + 1; bOk := WebFtpFindNextFile(hFtp, sFileName, MAX_PATH, nAttribute); end; if nAttribute = WEB_FTP_FA_NO_MORE_FILES then Printwrite((string(nFiles) + ); write(" files found"); writeLn; else writePrint("Error retrieving directory information!"); writeln; end; // The following command does the same WebFtpListDirectory(hFtp, ""); WebFtpShutdown(hFtp); end TWebFtpListDir;
Ftp.sep