好心人能帮我看一下这个程序吗?

000168 2003-09-24 11:48:03
我想实现自动上传,就是一启动这个程序后每隔一定时间上传一次(因为这个目录下随时可能有新的文件产生),可是线程好像没有启动,也就是不能上传到服务器,如果不使用线程的话可以实现手动上传,但这不是我所要的,我要的是自动上传。是那里出了问题吗?

static void Main()
{
Application.Run(new Form1());
}

public void StartThread()//开始启动一个新线程
{
try
{
newThread=new System.Threading.Thread(new ThreadStart(ReceiveMessage_1));//ReceiveMessage线程要做的工作放在这个函数里面
newThread.Start();
}
catch(Exception ex)
{

}
}

private void ReceiveMessage_1()
{
//这里开始写你要执行的操作
//////////////////////////
FTPFactory ff = new FTPFactory();
ff.setDebug(true);
ff.setRemoteHost("172.22.68.4");
ff.setRemoteUser("webipp");
ff.setRemotePass("");
ff.login();
ff.chdir("bt\\hnny");

foreach(string Fn in Directory.GetFiles(@"d:\hnny","*.*"))
{
if (File.Exists(Fn))
ff.upload(Fn);

}


System.Threading.Thread.Sleep(5000);//线程等待0.5分钟
this.newThread.Abort();
this.StartThread();//再次启动线程
}



private void button1_Click(object sender, System.EventArgs e)
{


FTPFactory ff = new FTPFactory();
ff.setDebug(true);
ff.setRemoteHost("172.22.68.4");
ff.setRemoteUser("webipp");
ff.setRemotePass("");
ff.login();
ff.chdir("bt\\hnny");

foreach(string Fn in Directory.GetFiles(@"d:\hnny","*.*"))
{
if (File.Exists(Fn))
ff.upload(Fn);

}

ff.close();

}
...全文
39 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
kuangren 2003-09-24
  • 打赏
  • 举报
回复
timer控制简单,但是多线程也它的好处
angui 2003-09-24
  • 打赏
  • 举报
回复
可一用定时器完成你要的工作,每必要增加程序的复杂度
storm97 2003-09-24
  • 打赏
  • 举报
回复
你没有调这个方法来启动线程啊!StartThread()
000168 2003-09-24
  • 打赏
  • 举报
回复
谢谢各位了!可以实现了,真的是太感谢了!
000168 2003-09-24
  • 打赏
  • 举报
回复
谢谢各位了!可以实现了,真的是太感谢了!
000168 2003-09-24
  • 打赏
  • 举报
回复
我在按钮里加入StartThread(),可是只实现了手动上传,没有实现自动上传,也就是没有用到thread.sleep(1000)循环上传,因为是第一次用线程,请多多包含,要怎样调用ReceiveMessage_1()???
文丹传 2003-09-24
  • 打赏
  • 举报
回复
private void button1_Click(object sender, System.EventArgs e){
FTPFactory ff = new FTPFactory();
ff.setDebug(true);
ff.setRemoteHost("172.22.68.4");
ff.setRemoteUser("webipp");
ff.setRemotePass("");
ff.login();
ff.chdir("bt\\hnny");
foreach(string Fn in Directory.GetFiles@"d:\hnny","*.*"))
{
if (File.Exists(Fn))
ff.upload(Fn);
}
ff.close();
}
你哪里启动了StartThread()?也没有调用ReceiveMessage_1()???

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧