我正在尝试将pdf文件写入浏览器,当客户端打印pdf时,发送到打印机的文件名是文件名。但是现在我得到了发送到浏览器“aspfile.asp”
的asp页面的名称因为我在使用Response.ContentType = "application/pdf"
时无法在页面中添加标题,所以我添加了一个执行server.Transfer
的页面。
但每次代码传递时,Response.ContentType = "application/pdf"
标题都会被删除。
所以这是我的代码: 第一页:
<html>
<head>
<title>
<%= Request.QueryString("File") & ".PDF" %>
</title>
</head>
<body>
<%
Server.Transfer "loadfileAfter.asp"
%>
</body>
</html>
这是第二页(loadfileAfter.asp):
Response.ContentType = "application/pdf"
Response.AddHeader "content-disposition", "Filename=" & Request.QueryString("File") & ".PDF"
Const adTypeBinary = 1
strFilePath = "D:\" & Request.QueryString("File") & ".PDF" 'This is the path to the file on disk.
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile strFilePath
Response.BinaryWrite objStream.Read
objStream.Close
Set objStream = Nothing
我认为这条线会有所帮助:
Response.AddHeader "content-disposition", "Filename=" & Request.QueryString("File") & ".PDF"
但它没有改变一件事。
感谢您的帮助
答案 0 :(得分:1)
这个对我有用:
Response.AddHeader "content-disposition", "attachment; filename=""" & fileName & """"