1

Windows XP で Java を使用しています。古いエプソンのプリンターで印刷するには、FileOutputStream. 例えば:

ostream = new FileOutputStream(printer);
pstream = new PrintStream(ostream);

//reset default settings
pstream.print(ESC);
pstream.print(AT);

を初期化するFileOutputStreamには、プリンターのネットワーク名を使用します"\\Server\Printer"。これは、コンピューターがネットワークに接続されている場合は正常に機能しますが、利用可能なネットワークがない場合、FileNotFoundException「ネットワークの場所に到達できません。ネットワークのトラブルシューティングについては、Windows ヘルプを参照してください」というメッセージが表示されます。Serverアプリを実行しているコンピューターの名前です。とにかく、使用する"\\localhost\Printer"と同じエラーが発生します。

これがWindowsの問題である場合に備えて、Windowsファイルエクスプローラーでこのエラーが発生するかどうかを確認しました。\\Server\Folderネットワークに接続せずにローカル共有フォルダー ( ) に入ろうとすると、同じエラーが発生します。ただし、ファイルエクスプローラーを書き込むと、プリンターが開きます。\\Server\Printer

では、利用可能なネットワークがない場合どうすれば を初期化できますか?FileOutputStream

編集: LPT1およびUSBポートを介してサーバーに接続されたプリンターがいくつかあります。同じプログラムが他のコンピューターでも実行されるため、プリンターの共有名を使用しています。ただし、誰かがサーバーをネットワークから切断した場合でも、私のプログラムはサーバー上で正常に動作し続けたいと考えています。

私はこれを何年も実行していますが、数日前に1つのルーターを変更したかったので、サーバーを切断しました. 次に、このエラーが発生しましたが、プリンターがサーバーに接続されているため、ネットワークの可用性に関係なく、プログラムはサーバー上で動作するはずです。

4

0 に答える 0