VBクライアントからのサーバーファイルダウンロード
ファイルをダウンロードするシステム構築で困っております。
サーバーに保存しているPDFファイルをクライアントからダウンロード
し、Acrobatで開きたいのですが、ログオンやアプリケーション上での
権限認証のロジックを経由した後にダウンロードさせたいため、http
やftpで公開することができません。
また、VB 6.0から開く必要があります。
現在は、
・サーバー(ASP)側でダウンロードのページを用意する。(後述)
・クライアント(VB6)で用意したページを開く。
ということでファイルのダウンロードとAcrobatの動作はできていますが、
・ブラウザの画面を閉じることができない。
・サイトのURLが残る。
ということで問題があります。
サイトのURLを表示せずにダウンロードを行い、ダウンロード後は画面を
閉じるか、ウインドウを表示せずに同一の機能を満たす方法はないでしょ
うか?
■実行環境
サーバー Win 2003 SP1 + ASP
クライアント Win XP SP2 + VB 6.0 + Internet Explore 6.0
■サーバーのスクリプト(http://server/download.asp)
<%
'' ログオン名の取得やログオン名に応じたアクセス制御
'' はこの部分に追加
Dim objStream
Dim strFilePath
Const adTypeBinary = 1
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
strFilePath = "d:\folder\pdffile.pdf"
Response.AddHeader "Content-Disposition", _
"attachment; filename=pdffile.pdf"
objStream.Type = adTypeBinary
objStream.LoadFromFile strFilePath
Response.BinaryWrite objStream.Read
objStream = null
%>
■VB6での起動
ret = ShellExecute(hwnd, "Open", "http://server/download.asp", _
"", "", vbHide)
よいアドバイスございましたらよろしくお願い致します。
お礼
bfoxさま、 ありがとうございました。無事にダウンロードできました。