では、対策は、待ち時間を大きな値に変更するということになりますが、私の知る限りでは、 Windows7 や WindowsServer2008 までは、変更する方法が見つかりませんでした。そこで、ポートを「UNIX印刷サービス LPRポート」に変更する -> レジストリーの編集によって、LPRポートの待ち時間を変更するという方法が考えられました。
元々 Windows では、LAN 経由の印刷用ポートとしては、この「LPRポート」が標準でした。しかし、下記のマイクロソフト社のページの情報にあるように、使用するポートの数が11個までとなっていたため、12個目の印刷ジョブの開始までに待ち時間が発生するという問題が発生しました。
https://support.microsoft.com/ja-jp/kb/179156/ja
その問題の解決のためには、記載されているように、レジストリーの編集が必要だったため、その必要が無い「標準(Standard)TCP/IPポート」が、新たに標準となったという経緯があります。
これは全く私の想像ですが、Windows の開発を行っているMS社があるUSでは、最早インパクト・プリンターは日本に比べて圧倒的に台数が少ないので、テストの対象になっていなかったのではないでしょうか?
設定の大まかな流れとしては、次のようになります。
- Windows 上の「Windows の機能の有効化または無効化」を使って、「LPD印刷サービス」「LPRポート モニター」を追加する。
- ドライバーのポート画面で「ポートの追加」を選択すると、「LPR Port」が追加されているので、これを使用して「LPRポート」を設定する。(ここで、「サーバーのプリンター名または印刷キュー」を入力する必要があります。基本的にはプリンターのLANカード固有の値になりますが、多くのケースでは「lp(半角小文字エルピー)」が使用できるようです。)
- PCの再起動を不要とするため、コマンド・プロンプト画面で「net stop spooler」と入力する。
- レジストリー・エディターを起動して、2 で追加した「LPRポート」のタイム・アウト値を変更する。(デフォルトは300秒 = 5分となっていますが、この値を大きくしても副作用は無いと思われますので、思い切って大きな値に変更しても良いと思います。)
- 併せて、11個までのポートの制限を外す編集を行います。
- レジストリー・エディターを終了して、コマンド・プロンプト画面で「net start spooler」と入力します。Spooler サービスの起動が確認できたら、終了です。
http://www.ricoh.co.jp/pps/download/pdf/windows_lpr_jp_win7.pdf
0 件のコメント:
コメントを投稿