web-dev-qa-db-ja.com

Windowslprの実装でプリンターが見つかりません

LinuxプログラムをWindows7に移植しようとしています。このプログラムは、WebSocketからlprコマンドを受信し、そのコマンドをローカルのビニールカッターに送信します。 Windows lprの実装は異なり、通過するアドバイスはあまりありません。

WindowsでLPRサービスを有効にし、ビニールカッターをLPRプリンターとしてインストールしました。イラストレーターか何かから上手く印刷されます。ただし、プリンタをlpq、またはlprしようとすると、

C:\Users\M> lpq -S 127.0.0.1 -P vinyl
Windows LPD ServerError: specified printer does not exist

C:\Users\M> lpq -S <full computer hostname> -P vinyl
Windows LPD ServerError: specified printer does not exist

C:\Users\M> lpq -S google.com -P vinyl
*times out*

このエラーは、グーグルで助けを見つけるのはかなり難しいです。私のプリンターはローカルなので、権限の問題でしょうか?私は窓についてほとんど知りません。私はcygwinでそれをやろうとしましたが、cygwinはwindowslprバージョンも使いたいようです。

3
erg

WindowsのLPDサーバーはループバックアドレスを好みません。代わりに、ネットワークアダプターの実際のIPアドレスを使用してみてください。

1
Tony Edgecombe

この種のほとんどのデバイスにはWindowsドライバーがあり、Linuxで動作させるには、これらの種類のフープを飛び越えます。まず、Windowsマシンに接続されたデバイスでWindowsドライバーとソフトウェアを使用することから始めます。通常、LinuxマシンでWindowsデバイスを共有する方が、他の方法よりも簡単です。回避策は、両方のマシンでローカルプリンターとしてセットアップしてから、マシン間でケーブルを移動することです。

デバイスをルーターに直接接続されたネットワークデバイスとしてセットアップできますか(セットアップが簡単です)?

デバイスをLinuxコンピューターに接続する必要がある理由がある場合は、アクセス許可の問題を調べている可能性があります。デバイスがパブリック共有(すべてのユーザー)用に設定されていることを確認します。

別の考え:ネットワーク化されたプリンタに対処する方法はいくつかあります。それを指定する他の方法の1つを試してください(ipp、http、AppSocketなど)。別のLinuxコンピューターを使用している場合、簡単な方法は、プリンターを見つけてURIをコピーすることです。

0
fixer1234