- - PR -
FDD書き込み時のエラー回避について
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2002-04-15 20:11
Javaアプリケーションをバッチファイルから起動して、フロッピディスクにファイルを書き込もうとした場合、フロッピディスクがフロッピドライブに挿入されていないと、Windows2000のエラーダイアログボックスが出てしまい、Javaアプリケーションが停止してしまいます。
Windowsのエラーダイアログボックスを出さずにJavaアプリケーションで、エラーを検知する方法は、ありませんか? |
|
投稿日時: 2002-04-16 02:26
IOException を try/catch ではだめなんでそか。
|
|
投稿日時: 2002-04-16 15:51
まだあまり試していないんですけど、私の所有しているノートマシンの内臓FDDにフロッピーを入れずに書き込もうとすると、ちゃんとエラーがcatchできるのすが、Windows2000のサーバマシン(デスクトップ)では、catchする前にウインドウシステムがエラーのダイアログボックスを出してしまいます。
これって、Windowsの設定ですかね? |
|
投稿日時: 2002-04-16 16:23
真偽のほどはわかりませんが、以下のページではJVM依存の問題なのでJNIを使うしかないと言っています。
http://www.jguru.com/faq/view.jsp?EID=488755 |
|
投稿日時: 2002-04-16 18:48
御回答有難うございます。本当に助かりました。
確かに、プラットホーム依存することだから、JNIを使うしかないと思います。 が、しかし、実際には、 OSがWindows2000で、同じJDKを入れて、動作させても、片方のマシンでは、 システムのエラーダイアログが出て、もう片方のマシンでは、エラーダイアログが出ないという現象も出ています。 違いは、環境の設定の仕方だと思いますが、何が違うのかさっぱり解りません。 この辺の環境を詳しい方何方かいらっしゃいませんか? |
|
投稿日時: 2002-04-16 23:56
> OSがWindows2000で、同じJDKを入れて
この問題に限らず、一般論としてサービスパックやJDKのバージョン情報が無いと誰も検証できないと思います。 > 違いは、環境の設定の仕方だと思いますが JDKが動いている環境自身が微妙に違うのかもしれませんね。 |
|
投稿日時: 2002-05-13 11:39
JNIを使用して、WINAPIのSetErrorMode(SEM_FAILCRITICALERRORS)を呼ぶことで
無事うまくいきました。 御指導有難うございました。 |
1
