V
vample
Unregistered / Unconfirmed
GUEST, unregistred user!
从定时从ftp服务器上取一个文本文件 1.txt 下载到本地硬盘上使用
用的是indy idftp控件,每次取文件都是
try
IdFTP.Disconnect;
IdFTP.Connect;
IdFTP.ChangeDir(S_Dir);
IdFTP.TransferType := ftBinary;
IdFTP.Get(SourceFile, DestFile, true);
IdFTP.abort;
IdFTP.Disconnect;
except
IdFTP.abort;
IdFTP.Disconnect;
end;
为何程序启动没有问题,取文件也没问题。程序可以正常运行2-3个小时,取文件读文件没问题。可是超过2-3小时,程序就会停止响应,也没异常抛出,必须重起程序,才能正常运行。1.txt变成空文本,不让删除,说有程序正在使用。
怀疑如下:
1、IdFTP.Get(SourceFile, DestFile, true)的时候如果网络异常,是否会导致程序不响音
2、ftp服务器上的文本是定时更新的,如ftp服务器更新1.txt文本的时候,程序取IdFTP.Get(SourceFile, DestFile, true),导致程序停止响应
3、下载后的文件是程序计算用的,如果本机器1.txt文件正在使用的时候,下载1.txt覆盖本机1.txt会导致程序停止响应
另外:如何取ftp服务器上1.txt文本的更新时间
用的是indy idftp控件,每次取文件都是
try
IdFTP.Disconnect;
IdFTP.Connect;
IdFTP.ChangeDir(S_Dir);
IdFTP.TransferType := ftBinary;
IdFTP.Get(SourceFile, DestFile, true);
IdFTP.abort;
IdFTP.Disconnect;
except
IdFTP.abort;
IdFTP.Disconnect;
end;
为何程序启动没有问题,取文件也没问题。程序可以正常运行2-3个小时,取文件读文件没问题。可是超过2-3小时,程序就会停止响应,也没异常抛出,必须重起程序,才能正常运行。1.txt变成空文本,不让删除,说有程序正在使用。
怀疑如下:
1、IdFTP.Get(SourceFile, DestFile, true)的时候如果网络异常,是否会导致程序不响音
2、ftp服务器上的文本是定时更新的,如ftp服务器更新1.txt文本的时候,程序取IdFTP.Get(SourceFile, DestFile, true),导致程序停止响应
3、下载后的文件是程序计算用的,如果本机器1.txt文件正在使用的时候,下载1.txt覆盖本机1.txt会导致程序停止响应
另外:如何取ftp服务器上1.txt文本的更新时间