现在是这种情况:我写的那程序(asp.net(c#))在人家机器上放着(以下简称远程程序),我使用ftp上传,同时,那ftp空间也就是程序的工作目录.
    我现在需要跟那程序做些交互,比如,上传一些数据叫他实时去执行,那么就需要我在本地写一程序跟他交互了(以下简称本地程序),因为那程序是ftp方式,不能通过http或tcp/ip等访问.因为没什么好方法,我就想在ftp上面放一xml文件,起个中介作用,本地程序访问ftp,去读取并修改那xml文件,远程程序也实时的分出一个线程来读那xml文件,若发现有需要执行的操作则立马去执行,否则一直循环访问.    上面的想法不知能否实现.不能的话怎么实现呢?请给出解决方案并帮忙说明实现的技术难点。
若能实现,有以下几个问题请教:
    1、因为asp.net是web形式,能否分个线程出来一直轮询呢?因为http是被动调用才执行的怎么叫他(这个线程)自己自动一直在执行呢?
    2、本地程序可能会采取win应用程序的方式而不是web的方式了,那他能登陆ftp,但是能否在那上面操作文件呢?总不能把他下载下来再修改上传吧,那样的话若数据量大了会造成数据丢失的啊
    3、因为我从做这个项目刚刚基础.net,最好能给我以上两个例子的代码。    谢谢各位,分不够的话,我再开帖加,希望今天结帖!我的qq是:56147276 msn是:[email protected]  希望得到您的帮助!!!

解决方案 »

  1.   

    FTP来做这个我想你最好生成多个XML文件,这样就可以不改原有的但可以将新的执行内容写到一新的XML文件,在服务器端调用执行时在将这个XML文件加入到原XML中。
      

  2.   

    我没用过ASP.net做过东西,不太清楚,但根据HTTP的原理和我用JSP做的经验来说是不能用一个线程来完成这个工作的,因为正向你自己说的,HTTP是一次请求后才执行,也就是说,当有人发出请求时你写的程序才会执行而且它是执行完一个完整的函数或是方法后才统一的送显的,如果你用一个单独的线程来做这个工作,它会一直读那个文件只要这个线程不结束就会认为该方法或是函数没有执行完就会一直不送显所以如果你这样做的话更是什么也显示不出来了。你可以把你想执行的那个函数或方法写入global.asax试一下这个我不知道可不可以因为我也没这样用过。
    至于FTP的那个问题如果FTP服务器给了你修改的权限的话应该是可以直接在上面修改的。
      

  3.   

    计时器,
    timer去判断是否有新数据,有就执行,否则就不执行
      

  4.   

    laughingrat(傲笑红尘) 说的对 ,我知道用这个,但是能否用线程呢
      

  5.   

    http://adandelion.cnblogs.com/archive/2006/01/26/233721.html
      

  6.   

    laughingrat(傲笑红尘) ,谢谢,这个正是我需要的.然后,就是那个ftp问题了
      

  7.   

    关于这个多线程的问题我测试通过了,用那例子很好,哈哈
    剩下的问题就是登陆ftp并且修改xml文件内容了,修改xml没问题,我做过
    但是登陆ftp是个问题,还有,就是登陆后能不能直接在ftp上修改那文件???  这问题还请大家多多帮忙