- - PR -
EXCELダウンロード後のボタン処理について
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2005-06-10 17:21
いつも参考にさせて頂いてます。
今回、皆様のお知恵をお借りしたく書き込みさせて頂きました。 現在Win2k、ASP.NET(VB.NET)で開発を行っているのですが下記の内容で困っています。 内容は、Window.Openで開いた画面よりGrapeCityのActiveReportsを使い、 EXCELファイルを作成後サーバーに保存、その後Response.BinaryWriteで ダウンロードを行いクライアントに保存しています。 と、ここまでは動いているのですがダウンロード完了後、画面の「閉じるボタン」 でWindow.Closeを実行するサブルーチンを呼び出そうとすると、約5秒程度の 待ちが入ってから「閉じるボタン」の処理に入ってきます。 ダウンロードをせずに「閉じるボタン」の処理をするとすぐに実行されるのですが、 ダウンロード実行後はかならず、5秒程度のタイムラグが発生しています。 ちなみに、5秒程度待った後は何事も無かったかの様に動いております。 色々ネット等で調べてみたのですが、同じ様な事例を見つける事ができず悩んでおります。 待ち時間さえ気にしなければいいのですが、そうもいかないので・・・・ ダウンロード時のソースを抜粋しておきますので、おかしな所があればご指導お願いいたします。 Dim ExFileName As String ' FILE NAME Dim MyFileStream As FileStream Dim FileSize As Long ' ここでEXCELファイルをサーバーへ保存 ' Excelファイルのダウンロード MyFileStream = New FileStream(ExFileName, FileMode.Open) FileSize = MyFileStream.Length Dim Buffer(CInt(FileSize)) As Byte Response.ContentType = "application/x-download" Response.AddHeader("content-disposition", "attachment;filename =" + HttpUtility.UrlEncode(ExFileName)) MyFileStream.Read(Buffer, 0, FileSize) MyFileStream.Close() Response.BinaryWrite(Buffer) ' テンポラリファイルの削除 If System.IO.File.Exists(ExFileName) = True Then System.IO.File.Delete(ExFileName) End If Response.Flush() Response.End() 以上です。よろしくお願いいたします。 |
1
