收录日期:2019/04/18 21:02:52 时间:2016/06/01 15:43:46 标签:基础类
我想实现每隔两分钟就自动下载FTP某文件夹下的文件,然后删除这些文件。代码如下:
void __fastcall TForm1::startClick(TObject *Sender)
{
AnsiString RomoteFile,TheDir;
NMFTP1->Connect();
if(InputQuery("改变目录","目录名",TheDir))
NMFTP1->ChangeDir(TheDir);
NMFTP1->List();
TStringList * str=NMFTP1->FTPDirectoryList->name;
for (int i=0;i <str->Count ;i++)
{
  AnsiString s=str->Strings[i];
  NMFTP1->Download(s,s);
  NMFTP1->Delete(s);
     }

}
//---------------------------------------------------------------------------
void __fastcall TForm1::stopClick(TObject *Sender)
{

 NMFTP1->Disconnect();
}
//---------------------------------------------------------------------------


void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
     Timer1->Enabled=true;
     Timer1->Interval=120000;
}
//---------------------------------------------------------------------------
  测试的时候,下载是可以实现的,可是我在文件下载完毕后又往FTP上上传了文件,可是隔了好久都没有下载,好象定时器没有起到什么作用。请大家帮我看看怎么回事,该怎样改?
void __fastcall TForm1::startClick(TObject *Sender)
{
  Timer1->Enabled=true;
  Timer1->Interval=120000;
}

void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
AnsiString RomoteFile,TheDir;
NMFTP1->Connect();
if(InputQuery("改变目录","目录名",TheDir))
NMFTP1->ChangeDir(TheDir);
NMFTP1->List();
TStringList * str=NMFTP1->FTPDirectoryList->name;
for (int i=0;i <str->Count ;i++)
{
  AnsiString s=str->Strings[i];
  NMFTP1->Download(s,s);
  NMFTP1->Delete(s);
}
}
你做的事情应该放在OnTimer事件中,在其他地方(比如你的OnClick()事件里)设置Timer的Enabled属性
而你做的恰恰相反
哦,明白了,谢谢!

为什么? 请教关于sql server2000中使用DTS包的问题,非常着急的,谢谢! 谁有赤壁的源程序 你理想女朋友三围是多少? 如何在servlet和jsp中共用一个session范围的bean? java初学者想调查一下thinking in java 有在线的软件破解高手吗??我有问题要问 大家讨论了很多,请推荐基本值得看的书(sign,现在关于计算机的书太多了,烂书也难免) 大家在刚学vb时都做过什么小程序,能说说吗? 关于WindowFromPoint()与Spy++的一点疑问 请教一个access的问题(关于数据库大小的问题) 谁帮我做一个注册程序,要文本的 怎么样返回数据库中的数据 怎样在sql语句中使用变量? 我想使dbgrid中修改的记录变绿,删除的记录变红,进来讨论者有分 等待事件对象的问题,困惑.... 怎样在在窗口中打开的位图上画一个圆,而且圆能在位图上拖动 请问各位:一个Global.asa的问题和数据库的小问题。。。谢谢了。。。很急。。。 如何在Windows下Hook键盘上的非标准键 继续以前的问题~谁帮帮俺呀~一定给分~ 高分求CScrollView处理Text的例子? 请问用udp方式通讯的c/s系统,服务器里bind相应的ip和port,c就可以用sendto往这个地址和端口发送数据,那S往C发送数据怎么办呢?我是指\0 如何获取文件图标? VB编程,该如何进行? 想要一本好书! 我想用人民币购买表格控件(有合计行,多表头等功能,类似DBGridEh,能在Delphi6中运行),请告诉我联系方法。 深入探讨 Focus 的问提 用VB6如何制作Windows系统的钟表? 标题:超酷书签:功能强大的书签管理和表格填写工具 哪里有API的资料下载?最好是基于PB的!