0

我正在嘗試向瀏覽器寫入pdf文件,當客戶端打印pdf時,發送給打印機的文件名就是文件的名稱。但現在我得到的ASP頁面的名稱發送到瀏覽器「loadfile.asp」Asp Classic寫入PDF並在打印時保留文件名

因爲我不能在我的網頁上放一個標題,當我使用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

這是瀏覽器的具體情況?如何將PDF發送到打印機 - 是由瀏覽器發送的,還是由瀏覽器內的插件(如Adobe Reader) –

+0

是的,Adobe Reader!對不起,我應該說了。它似乎並不是瀏覽器特定的 – GregM

+0

我不認爲寫PDF是經典ASP可以開箱即用的東西。 ABCpdf是一個流行的第三方組件。 http://www.websupergoo.com/abcpdf-1.htm – John

回答

0

這一個爲我工作:
Response.AddHeader "content-disposition", "attachment; filename=""" & fileName & """"