- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:サーバーのローカルパスからのダウンロード)
サーバーのローカルパスからのダウンロード方法とは?
このQ&Aのポイント
- クライアントからアクセスできないディレクトリ内のファイルをサーバーからダウンロードする方法を教えてください。
- ブラウザで開かずにファイルをダウンロードさせる方法を教えてください。
- CSVファイルのダウンロードはできますが、wordやexeファイルのダウンロード方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
ASPには詳しくないのですが、 似たようなケースをPHPで体験していますので 憶測ながらで申し訳ないのですが、 「恐らくクライアントがIEを使用して wordなどのファイルをダウンロードさせようとすると ブラウザ中で開いてしまって困っている」 と言う症状なのではないかと思われます。 (他のブラウザではダウンロードできると思われます) 解決方法ですが、 ASPでの記述の仕方がわかりませんので ヘッダのみ記述しますのでダウンロード時に出力するよう ASPで記述してください Pragma: cache; Content-Disposition: inline; filename=[ファイル名]; Content-type: text/x-download; charset=Shift_JIS;
お礼
早速ご回答いただきましてありがとうございました! 対応策としては、ASPのStreamオブジェクトを利用して ファイルをバイナリ読みしてそれをダウンロードさせるようにいたしました。 Option Explicit Dim strFile Dim objStream Dim strDlFilePath strDlFilePath = "C:\path\to\test.xls" ' ダウンロードする時に付けるファイル名 strFile = "aaa.xls" With Response .ContentType = "text/x-binary" .Addheader "Content-Disposition","attachment;filename=" & strFile .CharSet = "Shift-JIS" End With Set objStream = server.createObject("ADODB.Stream") objStream.Open objStream.Type = 1 ' サーバーにあるダウンロードファイル名 objStream.LoadFromFile strDlFilePath Response.BinaryWrite objStream.Read objStream.Close Set objStream = Nothing ってな感じにしようと思っております。 ヒントをいただき、ありがとうございました!