@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

ASPでのファイルアップロードエラーについて教えてください

1
投稿者投稿内容
ポン
ベテラン
会議室デビュー日: 2006/02/15
投稿数: 98
投稿日時: 2006-07-20 20:39
いつもお世話になっております
現在ASPで開発を行っておりますが
ファイルアップロード時、正常にできたり、アップできなかったりします。

BASPを使用してファイル(CSVファイル)のアップロードを行い、画面上に表示する処理を作成しています。
上記の処理中にサーバーエラーが発生すると、画面上の日本語が全て「???」表示になってしまいます。
文字化けしたブラウザを閉じるか、IISを再起動するまで状態は直りません。
正常にアップロードが完了し、エラー無く画面表示も終了した場合は、問題ありません。

回避策/解決策をご存知の方がいらっしゃいましたら、ご教授お願い致します

unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2006-07-20 20:53
引用:

ボンさんの書き込み (2006-07-20 20:39) より:
BASPを使用してファイル(CSVファイル)のアップロードを行い、画面上に表示する処理を作成しています。
上記の処理中にサーバーエラーが発生すると、画面上の日本語が全て「???」表示になってしまいます。


ASP.NET ではく ASP でしょうか?
#もし、あえて昔の ASP を使う必要がないなら ASP.NET を使うことをお勧めします。

昔の記憶で書きますが、ASP では Request.BinaryRead でまだ読める状態なのに読まない、すなわち読み残しがあると、その後の挙動がおっしゃるような感じでおかしくなるみたいです。
理由は分かりません。
エラーが発生しても、とにかく読めるだけ読むような復旧処理を追加してみてはどうでしょうか。

なお、これは BASP21 等のツールを使う以前の問題です。

--
unibon {B73D0144-CD2A-11DA-8E06-0050DA15BC86}
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-07-20 21:04
引用:

ボンさんの書き込み (2006-07-20 20:39) より:

上記の処理中にサーバーエラーが発生すると、画面上の日本語が全て「???」表示になってしまいます。


エラーとは何ですか?FTPのエラー?
エラーコードやメッセージはどう出ていますか?
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-07-20 22:15
エラーが出たときに、アップロードしたファイルはどうなっているのでしょう?

IIS をリセットするのと、IE を再起動するのとでは、全く現象が異なります。
問題の切り分けができていないと思います。
ポン
ベテラン
会議室デビュー日: 2006/02/15
投稿数: 98
投稿日時: 2006-07-21 11:16
Jittaさん、かるあさん、unibonさんご回答ありがとうございます

Jittaさん
>エラーが出たときに、アップロードしたファイルはどうなっているのでしょう?

アップロードしたファイルは様々です。同じファイルでもエラーが出たり
出なかったりしております。例えばファイル名だけが違ってその他全く同じ
ファイルをアップした時、最初のほうは成功して後のほうは失敗したりします

>IIS をリセットするのと、IE を再起動するのとでは、全く現象が異なります。
>問題の切り分けができていないと思います。

説明不足でした申し訳ございません。
エラーがでた後ログイン画面に戻り再ログインをすると正常に作動します

かるあさん
エラーコードがでております。Mid関数の引数が正常ではありません
とでるのですが、Jittaさんの返信で述べたように
同じファイルをアップしても落ちたり、落ちなかったりとまちまちなため
そこが原因ではないようです

unibonさん
ASPを使用しております。ASP.netへの移行は困難です、ご指摘ありがとうございます
色々調べてもやはり原因不明ばかりでした・・・

////////////////////////////////////////////////////////////////////////////

原因が分かられる方いらっしゃったら、ご教授宜しくお願い致します。
glassjaw
会議室デビュー日: 2006/09/08
投稿数: 1
投稿日時: 2006-09-08 11:59
たまたまこのレスをみかけました。
もう既に解決済みかもしれませんが
??で表示されてしまうことに関しては

Server.HTMLEncode("あいうえお")

で正常表示できますよ

[ メッセージ編集済み 編集者: glassjaw 編集日時 2006-09-08 12:02 ]
1

スキルアップ/キャリアアップ(JOB@IT)