「[IE] Input type = file 属性の入力フォームにて submit を行っても Web サーバーから反応がない」の回避方法

IE6 (XP SP2)以降からの仕様で、

[IE] Input type = file 属性の入力フォームにて submit を行っても Web サーバーから反応がない
http://support.microsoft.com/default.aspx?scid=kb;ja;890981

というのがあり、

存在しないファイル名や、相対パスを入力した状態でsubmitを行うとJavaScriptエラーになる。
一度JavaScriptエラーになると、ポストバックができなくなるので、困ってしまう。

そんなとき、通常、submitをtry〜catchで囲めば回避できるのだが、
ASP.NETの場合、クライアント側のPostBack関数内でsubmitを行っている関係上、難しい。(というか、その方法は無理である。)
では、どう回避するのかと言うと・・・
window.onerrorイベントに、回避するためのfunctionを設定する。


window.onerror = function(Message,FileName,RowNo)
{
alert(Message + '\n' + FileName + '\n行番号:' + RowNo);
}
といった感じである。
これでとりあえず、JavaScriptエラーは回避される。

今回の場合は"アクセスが拒否されました。"というエラーメッセージが出るので、
それをハンドリングして違うメッセージを出力しても良いかもしれない。