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つのルーターを変更したかったので、サーバーを切断しました. 次に、このエラーが発生しましたが、プリンターがサーバーに接続されているため、ネットワークの可用性に関係なく、プログラムはサーバー上で動作するはずです。