我现在再做一个文件管理的小软件,客户的文件都很大,我用http的上传100兆一下的还可以,可是再大的救报错了,想用ftp方式上传,不知道怎么做,有没有这方面的代码,谢谢!我用的是vb.net

解决方案 »

  1.   

    http://www.codeproject.com/cs/internet/ftplibrary.asp 一个开源的封装好的类库,我试过下载,上传应该也没有问题,
      

  2.   

    他用的是c#,不过vb应该也不少,建议搜索 ftpclient。framework sdk中的类有FtpWebRequest ,FtpWebResponse ,网上一搜,一大堆例子,也有直接对ftp命令进行封装的开源类库
      

  3.   

    FtpWebRequest和FtpWebResponse两个类再.NET Framework 1.1中是不是没用提供啊,我看网上说2.0里才信新加的,我用的是.NET Framework 1.1
      

  4.   

    网上也有几个是用.net1.1的,直接对ftp命令进行的封装,你去 www.codeproject.com去搜索一下ftp
      

  5.   

    文件上传下载、目录上传下载,断点续传 都有DotNetFTPhttp://www.yulinsoft.com
      

  6.   

    我现在再做一个文件管理的小软件,客户的文件都很大,我用http的上传100兆一下的还可以,可是再大的救报错了,想用ftp方式上传,不知道怎么做,有没有这方面的代码,谢谢!我用的是vb.net
    ----------------
    以前,总以为ASP.NET上传大小有所限制而且在225M之内,但今天看来,这个说法不准确。几乎可以说,它是无限大小上传的。只不过,因为操作系统本身的限制及参数的设置,让它有了限制。
    从服务器的性能来说,服务器越高级,内存越大,它的上传速度也就越大,而且可上传的上限也越高。
    扩大上传限制的奥妙就在于服务器的内存大小及系统的设定。
    C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG\machine.config
    上述文件中,有一个设置ASP.NET对于内存使用的限制,即
    processModel 节的memoryLimit属性。此属性,默认被设置为60,即60%,意思即为可使用服务器总内存的60%,当使用的内存超过这个数值时,系统将自动执行回收动作。
    当我们在上传的时候,如果上传的文件大小所占用的内存大小及整个运行环境超过了系统可用内存的60%时,此上传即失败。而且据实际数值看,要上传1M大小的文件,它就会占用2M的内存。如此,当你要上传1000M的文件时,你的服务器内存起码要有2000M或更大。
    而且,普通情况下,由于我们的操作系统,对于内存的使用,是有限制的,即使你有4G的内存,但你能使用的仅仅是2G大小(除非应用其他方法扩大使用范围,当然,在今后64位系统下,可使用内存将大大增加了)。而如果没有修改这个60%的限制的话,那么,可使用的仅仅只能是1.2G,再扣除上传文件中的扩大内存占用,几乎可以说,在不修改其他参数的情况下,ASP.NET能上传最大不超过600M的文件。(我已经成功上传350M大小的文件,速度超过2M/s)。
    在未上传文件前,系统所使用内存大约在220,在上传最后,内存占用达到950M左右,两者相减之后,约等于所上传文件大小的一倍。