いつもお世話になっております。
IIS+VBSで、サーバーに上げたファイルを各自の端末でダウンロード出来る
ページを作成しています。
例えば、クライアントで
<a href="download.asp?FILE=見積書.xls">見積書</a>
をクリックすると、download.aspに変数FILE(見積書.xls)が
渡され、download.asp側でtoolsフォルダ配下の見積書.xlsを
ダウンロードする準備を行う、といった具合です。
これまで順調に動いていたのですが、ここ2,3日で急に
AccessのMDEファイルがダウンロード出来なくなってしまいました。
本来ならダウンロード確認画面に「XXX.mde」と表示されるはずが、
「download.asp?FILE=XXX_mde」と書き換えられたかのように表示され、
保存しようとしてもエラーになります。
開く を選択するとASPのエラーが表示されるのですが、
BASP21のobjBasp.BinaryReadメソッドのところで「特定できないエラー」が
表示されています。
今までMDEファイルもダウンロード出来ましたし、家で同じ環境を構築しても
上手くいったのですが、会社の環境だけこのような事態になっています。
どなたかこの解決方法をご教授願えませんでしょうか?
よろしくお願い致します。
(会社、自宅とも、WinXP+IIS6です)
---------------download.asp のソース--------------
Dim dat
Dim objBasp
Dim fname
Dim bydata
fname = Request.QueryString("FILE")
Response.ContentType = "application/octet-stream;name=" & fname
Response.AddHeader "Content-Disposition","attachment;filename=" & fname
Set objBasp = Server.CreateObject("Basp21")
bydata = objBasp.BinaryRead(Server.MapPath("tools/" & fname))
Response.AddHeader "Content-Length", ubound(bydata) + 1
Response.BinaryWrite bydata
Set objBasp = Nothing
-------------------------------------------------------
No.1ベストアンサー
- 回答日時:
BASP21
↑これ有償のを利用しないと、業務に使える代物ではないので、使ったことがないのですが、、、
>今までMDEファイルもダウンロード出来ましたし、家で同じ環境を構築しても上手くいったのですが、会社の環境だけこのような事態
これから言えるのは、
「環境の問題であって、プログラミングの問題ではない」
と想像されます。
WinXP+IIS6となっていましたが、
WinXPはIIS5.1ですよね?
もしかしたら会社はWin2003とか?
それと何もレスポンスを返すための配列であれば、BASP21を利用しないでも、ASP.netの標準機能でできます。
いっその事BASP21をはずして、書き換えてはいかがですか?
有償版を利用しているのであれば、ここの掲示板よりBASP21のサポートを受けるべきですが、そうでない場合は
「特定できないエラー」
なんて状態になったときに、対応の取りようがありません。
この回答への補足
ASP.NETで作り直してみました。
MDEファイルがダウンロード出来たり、出来なかったり、が続いて困っていました。
結局、フォルダ、あるいはファイルにおける権限の設定が邪魔していたようです。
というか言い訳なんですが、XPの設定が、フォルダ(ファイル)のセキュリティタブを表示しない
設定になっており、そこまでたどり着けなかった、というのが正直なところです。
そこらへんを最初から設定しておけば、レガシーASPでも問題なかったかもしれません。
(もう、戻す気力はありませんが・・・・・)
1050YENさま
ご回答いただき有難うございます。
IIS5.1でしたね。すみません。2003Srvとごっちゃになってました。
.NETって実装するのもありですね。単にダウンロードのリンク集なので
凝ったつくりも必要ないですし。
諸事情により、今回、MDEファイルをFTPサーバ経由でFFFTPでもって
ダウンロードしてIIS配下に置いたのですが、それ以降おかしくなった
ようです。
今度はメールで送ったものを配置して、それでもラチがあかなければ
ASP.NETでの実装を考えます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) セレクトボックスで選択された値をコントローラーで使用したい 2 2022/07/26 16:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/10 09:06
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) VBAでファイルを開くプログラムがエラーです 2 2023/02/21 16:56
- Android(アンドロイド) Aloha Browser でダウンロードしたファイルをPCに転送するには? 1 2022/05/23 18:54
- 画像編集・動画編集・音楽編集 DVD Styler トラブル解決方法 6 2022/10/29 16:00
- その他(クラウドサービス・オンラインストレージ) firestorage_androidスマホでダウンロードできない 1 2022/10/25 08:18
- PDF AutoCAD図面をPDF fileに変換した際、画像情報やブロック名はわかるのでしょうか。 1 2022/06/03 09:42
- Visual Basic(VBA) Excelのマクロについて教えてください。 作業フォルダ内に2つのファイルがあります。 このファイル 2 2023/07/09 13:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
OpenOfficeの書式エラーの質問...
-
Lubuntuでフォントをインストー...
-
vba エクセルダウンロードファ...
-
ExcelVBAで、隠しフォルダにあ...
-
Refreshで落ちる
-
VBAでファイルパスが長すぎてコ...
-
フォルダ参照ではなくファイル...
-
【Excel VBA】PDFを作成して,...
-
Microsoft Access エラー 3051
-
VB2005 で encoding="Shift_JIS...
-
ダウンロードさせるには?
-
デスクトップ上にフォルダを作...
-
ダウンロード不可PDFファイルは...
-
bat ファイルでフォルダ作成&移動
-
Excelでdatファイルを作成??
-
JSONファイルをダウンロードさ...
-
共通化したいのですが。。。
-
HTMLタグのあるCSVファイルを利...
-
ファイル名の特定文字だけ削除...
-
ExcelVBA テキストファイルから...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでファイルパスが長すぎてコ...
-
Microsoft Access エラー 3051
-
Lubuntuでフォントをインストー...
-
【Excel VBA】PDFを作成して,...
-
Refreshで落ちる
-
ExcelVBAで、隠しフォルダにあ...
-
Excel VBA シートを指定して...
-
FFFTPでサーバに新規フォルダが...
-
VBAでFTPファイル転送がうまく...
-
フォルダ参照ではなくファイル...
-
エクセルVBA フォームを開く時...
-
グーグルドライブからコピーし...
-
OCXのライセンス
-
ファイルが別のPCで開けない
-
ASP上でFileSystemObjectのDele...
-
ASP.NETで、別サーバーへファイ...
-
VBSで指定したフォルダにファイ...
-
BASP21のアップロードについて
-
【python】pandasでExcel(...
-
vba エクセルダウンロードファ...
おすすめ情報