![仮想 COM ポートを物理 USB ポートにマップするにはどうすればよいですか?](https://rvso.com/image/1452847/%E4%BB%AE%E6%83%B3%20COM%20%E3%83%9D%E3%83%BC%E3%83%88%E3%82%92%E7%89%A9%E7%90%86%20USB%20%E3%83%9D%E3%83%BC%E3%83%88%E3%81%AB%E3%83%9E%E3%83%83%E3%83%97%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
私の質問は仮想 COM ポートを設定しますか?、答えはありません。
COMx のプリンター、USB ポート付きのプリンター、USB ポートはあるがシリアル ポートのないコンピューターにしか印刷できないソフトウェアがあるため、よく提案される物理的なシリアル - USB アダプターは解決策になりません。Windows 7 を騙して仮想 COM ポートを物理的な USB ポートにマッピングするソフトウェアを探しています。使用しているソフトウェアがビット ストリームを USB ポートに送信すれば、プリンターは問題なく動作するはずです。実際には USBx に印刷しているのに、ソフトウェアを騙して COMx に印刷していると思わせるにはどうすればよいですか。
インターネットで検索すると、特定のハードウェア シリアル-USB アダプタのドライバしか見つかりませんが、そのハードウェアは持っていないので、探しているものではありません。デバイス マネージャで USB ポートのラベルを変更することを提案している Microsoft フォーラムを見つけましたが、説明されているようなことは何も見つかりませんでした。おそらく、私たちが持っているものとは異なる USB コントローラでそれが可能かもしれません。
答え1
標準の Windows コマンドを使用してこれを行う簡単な方法があります。Lee Harrison のリンクにこのコマンドが示されていますが、ここでは簡単に説明します。まず、プリンターを共有可能にします (プリンターのプロパティ > 共有タブから)。
次に、コマンド プロンプトを起動して次のように入力します。
NET USE COM1: //pc_name/printer_share_name /persistent:yes
ここで、 はpc_name
共有 PC の名前であり、 はprinter_share_name
共有を設定するときにプリンターに指定した共有名です。
それ以降、COM1 に送信するものはすべてプリンターに再ルーティングされます。
ただし、1 つの条件があります。これは、データをプリンター (ハードウェアまたはソフトウェア) に送信する方法に関係なく適用されます。
あなたのプログラムはCOM1しか知らないので、プレーンテキストをプリンタに送信すると思います。多くのUSB専用プリンタはプレーンテキストを理解せず、それを完全に無視します。これを実行するプリンタはホストベースのプリンターでは、プリンタで変換するのではなく、Windows グラフィック エンジンがページを紙上のドットに変換します。これらは主に低価格のプリンタで、特にインクジェットですが、レーザーもあります。テキストを理解するプリンタは、PCL5 と呼ばれる言語をサポートする必要があります。PCL6 プリンタは通常 PCL5 もサポートしますが、PCL3 プリンタはサポートしません。
プリンターのモデルを教えていただければ、サポートされている言語を確認できます。
答え2
当社ではこのソリューションを使用しています。
仮想 COM ポート (VCP) ドライバーにより、USB デバイスは PC で使用可能な追加の COM ポートとして表示されます。アプリケーション ソフトウェアは、標準の COM ポートにアクセスするのと同じ方法で USB デバイスにアクセスできます。
ここインストールガイドです。
答え3
これは非常に特殊なシナリオですが、次の指示が役立つ可能性があります。 http://www.decompile.com/dataflex/tips/usb_printer.htm
そのリンクから直接:
The solution is to assign the USB-connected printer a network name, and
then to associate that network name with an unused LPT port. The
***** program will print to the LPT port and Windows will
automatically redirect the job to the USB printer port.
しかし、あなたのPCにはそもそもCOM接続がないので、COM接続が選択できるかどうかはわかりません。USB/COMアダプタこれらの値にアクセスするには、上記の指示に従って USB プリンターに転送してください。
ちょっとハックっぽいですが、古いソフトウェアを実行している場合は、結局こうなることがあります。どんな解決策でも、エレガントに見えるかどうかはわかりません。
最終的には、USB からシリアル/パラレルへのアダプタと、仕様に適合する安価なプリンタを購入するだけです。このソフトウェアをビジネスで使用する場合、これは簡単に正当化できる出費だと思います。
答え4
シリアルポートをエミュレートする必要がある場合、このソフトウェアはそのような作業を可能にします https://www.eltima.com/products/vspdxp/ しかし、エミュレートされた COM を使用して USB と通信できるかどうかはわかりません...