- - PR -
ASPによるEXEファイルダウンロード
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-09-06 21:33
EXEファイル(自己解凍圧縮ファイル)をダウンロードするロジックを作っています。
下記の通り記述しているのですが、ダウンロードした後にそのEXEを実行すると黒いコマンド画面が一瞬起動された後、消えてなにもなかったかのように終ります。タスクマネージャーにも起動されていないことは確認済み。 ということはうまくダウンロードできていないという結果だと思います。 また、元ファイルと、ダウンロード後のファイルのバイト数は少しダウンロード後の方が増えていました。(数バイト) 何が悪いのでしょうか? 宜しくお願いします。 以下ソースは、問題切り分けのため、notepad.exeを起動するようにしています。これでも上記と同じ現象となります。 ************START**************** Response.ContentType = "application/octet-stream" Response.AddHeader "content-disposition","attachment; filename=notepad.exe" strFilePath = filename '"C:\wwwroot\pep\notepad.exe" Set objStream = Server.CreateObject("ADODB.Stream") objStream.Open objStream.Type = adTypeBinary objStream.LoadFromFile strFilePath Response.BinaryWrite objStream.Read objStream.Close Set objStream = Nothing Response.end ************ END **************** | ||||
|
投稿日時: 2005-09-07 10:11
どこにどのような値が増えていました? (例えばファイルの最後にFFが3バイト付いていたとか) | ||||
|
投稿日時: 2005-09-07 10:37
クロスサイトポストリンク。
http://okweb.jp/kotaeru.php3?q=1628748 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-09-07 15:33
Response.BinaryWrite直後にResponse.Flush
をしてみてはどうですか? あとは、ヘッダにContent-Lengthを追加するとか。 たぶん前者の対応で十分ですが、 コンテンツサイズをブラウザに教えてあげたほうがいいかもしれませんね、 追記: ファイルの比較のためにFCというコマンドが標準搭載されています。 活用してみてください。 例 >fc /b サーバのファイル クライアントのファイル ファイル サーバのファイル と クライアントのファイル を比較しています FC: 相違点は検出されませんでした _________________ ASP++ by Moo http://moo-asp.net/ ASP/ASP.NETだいすき。 [ メッセージ編集済み 編集者: Moo 編集日時 2005-09-07 15:36 ] | ||||
|
投稿日時: 2005-09-07 23:04
多数ありがとうございます。
うまくいきました。 以下で Response.Flush ありがとうございました。 |
1