If you want ot get directory listing to get the file size, you are on the wrong track. FTP has a sie command to get the size of a file. Use it.
Now if you really want to dir list for a file only, most FTP server use the host file name as filter. -- [EMAIL PROTECTED] The author of the freeware multi-tier middleware MidWare The author of the freeware Internet Component Suite (ICS) http://www.overbyte.be ----- Original Message ----- From: "New Era" <[EMAIL PROTECTED]> To: "ICS support mailing" <twsocket@elists.org> Sent: Sunday, September 23, 2007 8:57 AM Subject: Re: [twsocket] Ftp-file corruption check > thanks for your kind reply, > > but if I go with the stable version of the ICS which does not have XCRC > command support, I used the following code to achieve my aim > (recommended by FPiette), > > 1- upload file using ftpPutAsync() > 2- use ftpDirAsync() and check the size of the file of interest if it is > same on the local machine and on the remote machine. > > I used the following pseudo code: > > procedure ftpRequestDone(); > begin > > case RqType of > .... > ftpTypeSetAsync(): Begin > ftpCli.HostFileName:= '2.bin'; > ftpCli.LocalFileName:= 'c:\2.bin'; > ftpCli.HostDirName:= '/'; > ..... > ftpCli.PutAsync(); > End; > > ftpPutAsync: Begin > ftpCli.HostFileName:= '2.bin'; > ftpCli.LocalFileName:= ''; > ftpCli.HostDirName:= '/'; > ftpCli.LocalStream:= TMemoryStream.Create(); > ftpCli.DirAsync(); > End; > > ftpDirAsync: Begin > ftpCli.LocalStream.Position:= 0; > SetLength(tempStr, ftpCli.LocalStream.Size); > {Get the directory response of the server into > tempStr string.} > CopyMemory(Pointer(tempStr)^, > TMemoryStream(ftpCli.LocalStream).Memory, ftpCli.LocalStream.Size); > > if(Pos(FileSizeInString, tempStr)>0) then > ShowMessage('Uploaded Correctly') > else showMessage('upload failure'); > End; > ... > > > end; > .... > end; > > but the problem with this code is; the server returns the whole directory > content (losts of file) but I only want to get the directory > listing for the specified file, to do that I used ftpCli.HostFileName:= > '2.bin'; before calling ftpcli.DirAsync() but it did not work. > Is there anyway to get the directory listing for the only specified file? > > best regards, > Thanks > > > Arno Garrels <[EMAIL PROTECTED]> wrote: New Era wrote: >> How to check if a file is either uploaded correctly or not, I know >> that ftpCli supports MD5 command, but at the outside world there were >> no commercial ftp hosting services that support MD5 command, I only >> found one ftp hosting which supports XCRC and this is command as far >> as I know, is not supported by ftpCli. (I am trying to build an ftp >> client that is to be used to upload files to external ftp host.) > > Aug 06, 2006 V2.107 Angus [SNIP] > added XCRC command to get CRC32 for file (for servers without > MD5) > > So get latest ICS-Beta, it's in both V5 and V6 > > -- > Arno Garrels [TeamICS] > http://www.overbyte.be/eng/overbyte/teamics.html > > -- > To unsubscribe or change your settings for TWSocket mailing list > please goto http://www.elists.org/mailman/listinfo/twsocket > Visit our website at http://www.overbyte.be > > > > --------------------------------- > Yahoo! Answers - Get better answers from someone who knows. Tryit now. > -- > To unsubscribe or change your settings for TWSocket mailing list > please goto http://www.elists.org/mailman/listinfo/twsocket > Visit our website at http://www.overbyte.be -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be