急:我用Web Server Application做了一个DLL从硬盘读取一个文件让客户端IE下载,怎么能让IE知道文件名呢?(150分)

  • 主题发起人 主题发起人 snowsky
  • 开始时间 开始时间
S

snowsky

Unregistered / Unconfirmed
GUEST, unregistred user!
比如:http://localhost/getfile.dll?file=C:/winnt/cmd.exe

Web Server Application中我用Response.SendStream 发送这个文件

IE打开这个地址时会提示下载,可是保存的文件名却是getfile.dll!!!!!

请问高手们,如何让IE知道应该保存的文件名是:cmd.exe 并且保证不能让蚂蚁之类的东西实现多线程下载!
 
做一个Redirect,新的Url的文件名部分就是这个名字就行了,
例如:
http://localhost/getfile.dll/download2/cmd.exe
 
你的意思是?

我是菜鸟
 
Response.SendRedirect('GetFile.dll/Download/cmd.exe');
是这样吗?是不是再做一个download处理?
 
现在好了,它连提示下载都不了,直接把EXE文件内容显示在IE窗口里面了,我已经这样做了:

Response.ContentType:='application/x-zip-compressed';
 
很奇怪的问题,假如先用SendRedirect的话,会在IE窗口显示EXE文件内容,

如果先SendStream再SendRedirect的话会下载,但文件名却是GetFile.exe

请指点一下.
 
看看yahoo 信箱的下载地址吧

http://cn.f152.mail.yahoo.com/ym/ShowLetter/delphiformat.rar?box=Inbox&MsgId=8092_163530_5851_1202_539492_0_674_696948_930947143&bodyPart=2&filename=delphiformat.rar&tnef=&download=1&YY=64157&order=down&sort=date&pos=0&view=a&head=b
 
我还是不明白,你直接给我说好了.
 
不用URL传参数,用hidden field很简单

我也有一个相关的问题,如何让用户访问
http://../abc.exe 时不是弹出 “当前位置打开/保存” 对话框,而是直接下载,
而且要允许 服务器CGI的执行
 
楼上的,具体怎么做?

服务器的权限不用操心,我是自己的服务器,现在难做的就是弹出的那个对话框怎么才能做到?

能给我具体讲讲吗?
 
晕,全误导我,害我走了好多弯路.

终于自己查W3的资料搞定了.
 
后退
顶部