asp.net 如何下载文件 并判断文件下载完毕;并执行一个方法??希望各位大虾帮个忙
  不胜感激 谢谢??

解决方案 »

  1.   

    这样的代码 我在后面调用一个方法不执行?
     string FileName = @"D:\soft\虚拟光驱.zip";
                //打开要下载的文件
                System.IO.FileStream r = new System.IO.FileStream(FileName, System.IO.FileMode.Open);
                //设置基本信息
                Response.Buffer = false;
                Response.AddHeader("Connection", "Keep-Alive");
                Response.ContentType = "application/octet-stream";
                Response.AddHeader("Content-Disposition", "attachment;filename=" + System.IO.Path.GetFileName(FileName));
                Response.AddHeader("Content-Length", r.Length.ToString());
                while (true)
                {
                    //开辟缓冲区空间
                    byte[] buffer = new byte[1024];
                    //读取文件的数据
                    int leng = r.Read(buffer, 0, 1024);
                    if (leng == 0)//到文件尾,结束
                        break;
                    if (leng == 1024)//读出的文件数据长度等于缓冲区长度,直接将缓冲区数据写入
                        Response.BinaryWrite(buffer);
                    else
                    {
                        //读出文件数据比缓冲区小,重新定义缓冲区大小,只用于读取文件的最后一个数据块
                        byte[] b = new byte[leng];
                        for (int i = 0; i < leng; i++)
                            b[i] = buffer[i];
                        Response.BinaryWrite(b);
                    }
                }
                r.Close();//关闭下载文件            Response.End();//结束文件下载
      

  2.   

    以我web开发6年的经验告诉你,做不到的,如果能做到的话,会是一个巨大的安全漏洞,为什么呢,读读http无状态协议吧
      

  3.   

    做个ActiveX控件。。就可以了。。你要干啥都行。。自行下载病毒都行
      

  4.   

    不说了吗?做个ActiveX控件。。你能提示怎么多了。。在涉及的话。。就是金钱问题了
      

  5.   

    我真不知道要做这样的功能干嘛!有WEB迅雷,超级旋风。。
      

  6.   

    SWFUpload可以
    http://www.gbaopan.com/注册个用户, 上传个东西看看就知道了!它是用了SWFUpload
    具体的说明GOOGLE一下吧