Como mapear uma porta COM virtual para uma porta USB física?

Como mapear uma porta COM virtual para uma porta USB física?

Minha pergunta é semelhante aConfigurando uma porta Com virtual?, que não tem respostas.

Eu tenho um software que só pode imprimir em uma impressora no COMx, uma impressora com uma porta USB e um computador com uma porta USB, mas sem portas seriais, portanto, o adaptador serial para USB físico frequentemente sugerido não é uma solução. Estou procurando um software que engane o Windows 7 para mapear uma porta COM virtual para uma porta USB física. Tenho certeza de que, se o software que estou usando enviar seu fluxo de bits para a porta USB, a impressora funcionará perfeitamente. Como faço para enganar o software fazendo-o pensar que está imprimindo em COMx quando na verdade está imprimindo em USBx?

Pesquisas na Internet mostram apenas drivers para algum adaptador serial para USB de hardware específico, mas não é isso que estou procurando, pois não tenho esse hardware. Encontrei um fórum da Microsoft onde eles sugeriram alterar o rótulo da porta USB no Gerenciador de dispositivos, mas nunca encontramos nada parecido com o que descreveram; talvez isso seja possível com um controlador USB diferente do que temos.

Responder1

Existe uma maneira simples de fazer isso usando comandos padrão do Windows. O link de Lee Harrison mostra esse comando, mas aqui está uma breve descrição. Comece tornando a impressora compartilhável (em Propriedades da impressora > guia Compartilhamento).

Agora, inicie um prompt de comando e digite:

NET USE COM1: //pc_name/printer_share_name /persistent:yes

Aqui pc_nameestá o nome do PC de compartilhamento e printer_share_nameo nome de compartilhamento que você deu à impressora quando configurou o compartilhamento.

A partir de então, tudo o que você enviar para COM1 será redirecionado para a impressora.

No entanto, há uma ressalva - e ela se aplica independentemente do método usado para enviar os dados para a impressora, hardware ou software:

Como o seu programa conhece apenas COM1, presumo que ele enviará texto simples para a impressora. Muitas impressoras somente USB NÃO entendem texto simples e simplesmente o ignoram completamente. As impressoras que fazem isso são chamadasimpressoras baseadas em host, onde o mecanismo gráfico do Windows converte a página em pontos no papel, em vez de deixar a impressora fazer a conversão. São principalmente impressoras de baixo custo, especialmente jato de tinta, mas também algumas lasers. As impressoras que entendem texto precisam oferecer suporte a uma linguagem chamada PCL5. As impressoras PCL6 geralmente também suportam PCL5, mas as impressoras PCL3 não.

Se você me informar o modelo da sua impressora, posso verificar qual idioma ela suporta.

Responder2

Utilizamos essa solução na empresa.

FTDI Virtual COM USB

Os drivers da porta COM virtual (VCP) fazem com que o dispositivo USB apareça como uma porta COM adicional disponível para o PC. O software aplicativo pode acessar o dispositivo USB da mesma forma que acessaria uma porta COM padrão.

Aquié o Guia de Instalação.

Responder3

Este é um cenário muito específico, mas as seguintes instruções podem funcionar para você: http://www.decompile.com/dataflex/tips/usb_printer.htm

Diretamente desse link:

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.

No entanto, não sei se as conexões COM serão selecionáveis ​​no seu caso, já que o seu PC não possui nenhuma. Você pode comprar umAdaptador USB/COMapenas para obter acesso a esses valores, use as instruções acima para encaminhar para sua impressora USB.

Parece meio hack-ish, mas quando você está executando um software antigo, às vezes é isso que acontece. Seja qual for a solução, não sei se parecerá elegante!

A última coisa seria apenas comprar um adaptador USB para serial/paralelo e uma impressora barata que atenda às especificações. Se você usa este software nos negócios, acho que é uma despesa facilmente justificável.

Responder4

Se você precisa emular a porta serial, este software faz esse tipo de trabalho https://www.eltima.com/products/vspdxp/ Mas não tenho ideia se você pode conversar com seu USB com o COM emulado...

informação relacionada