怎样将IE的默认下载屏蔽?做过下载组件的朋友进来看看!!!!!!! (300分)

  • 主题发起人 一剑封喉
  • 开始时间
>>一剑封喉
我明白你的意思了,我先说一下你要完成的任务:
1,客户要从服务器端下载东西(客户端应该是通过IE喽?)
2,服务器端要知道是哪个客户和该客户下载了什么?
3,要实时的看到某一个用户是否正在下载。
下载你可以考虑一下,如果客户用的是IE,服务器端用的是asp写的程序,那么彼此间的
通讯使用的是http协议,该协议本身是不存在用户验证的,所以关于用户这一块只能通过
自己写asp来实现了,我想这一点你应该是没有问题了。但是这只能做到上面说到的1,2点
至于第3点那你就必须要知道某客户端什么时候开始提出下载文件请求?什么时候下载结
束?而这两个时间第一个asp程序能基本得到,而第二个只有http server(web server)
自己清楚了,asp程序无法得到。
我觉得要实现第三点通过在服务器端创建供asp调用的组件应该是可以完成的,该组件的
功能就是部分的http server的功能,它接管由客户端提交给asp的文件下载的请求这时候
客户端IE与该组件进行文件传输(http通讯),结束后组件向asp返回结束信息,还有就是
该组件的http server 端口应该于web server的端口相异。
这是我的一个简单的思路,服务器端是asp+其它组件来完成的,实际上我觉得如果你的服务
就这么单一,http server 这一边完全可以自己开发,不需要web server了。
------------------
上面说的可能说得过于空洞了,不过我希望对你有点帮助。
 
:awl, 兄,谢谢了,其实我就是这样想的,做一个组件安装到服务器端,以便屏蔽掉IE的
默认下载(IE的下载完毕不能返回到ASP中),使得ASP知道用户下载完毕否!这个就是我
在篇头要问的问题!
 
这样的话就做一个isapi过滤指定扩展名的文件.然后由它负责向客户发送数据就可以了.
ps:做组件装到服务端的话你如何屏蔽客户端的IE设置? :)
 
>>一剑封喉,
恕我钻牛角尖,按我的思路并不是什么屏蔽ie(客户端的)默认下载,而是自己实现服务器
端(具体的http server)的文件下载功能,而客户端(IE)不必去动它。
当然如果按照你的思路,我觉得也是可以完成你要做的工作,不过就是主动权载客户端,他们
可以选择安装或不安装。
如果按照你的思路,我觉得可以这样:回到前面说的IDownloadManager接口的实现,与
IEDownload的应用,我想这个你应该没问题了,并且在客户端通过IEDownload也可以得到
下在结束的事件,接下来要做的就是向服务器端提交相应的得下载结束信息,在这里可以
使应如IdHttp,NMHttp组件的post方法模拟连结或表单的提交该服务器端的某一特定的asp
文件,使之知道此用户已经下在完成。
希望上面的回答你能满意。
 
感觉像是在用web实现ftp的功能啊.
 
:awl兄,多谢,其实按照你说的实现服务器端(具体的http server)的文件下载功能
这样我觉得就更好了,因为如果做个组件用户还得安装,有点麻烦,如果真的能够在服务器端
直接用HTTP功能做出这样的模块就更好了,不过还得麻烦您,其实我对这个下载和ASP
功力不是很强,您能够给做个简单的例子呢?比如在ASP中加一个按钮,然后点击它就可以实现
从指定地址下载东西,最后能够返回下载与否。再次感谢!

:xwings兄,isapi过滤指定扩展名的文件,能否详细点说出做法,最好能够个例子,谢谢!
 
楼猪的人品极差,不要给它例子
先看看这个贴子
http://www.delphibbs.com/delphibbs/dispq.asp?LID=1642149
 
多人接受答案了。
 
你不用给我分的,我也不缺。
上边那么多回答问题的,本可以多给他们些。

看了你的很多贴,只是想跟你说一声,请多给别人一点尊重。
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
927
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
顶部