Skip to main content

mpressão simultânea em múltiplas impressoras POS usando MFileMon + RAW

📌 Objetivo

Permitir que um único job de impressão seja enviado simultaneamente para múltiplas impressoras POS 80mm, sem alterar o código do sistema, mantendo o driver POS 80 e garantindo máxima compatibilidade e desempenho.


🧠 Estratégia adotada

Foi adotada a abordagem de duplicação RAW (ESC/POS) utilizando:

  • Driver POS 80 (Generic / ESC-POS)

  • MFileMon para interceptar o spool

  • Comando copy /b para replicar os bytes exatamente como gerados

🔁 Fluxo final


Sistema Driver POS 80 (gera ESC/POS / RAW) Porta MFileMon Arquivo .raw copy /b Impressora CAIXA Impressora CHURRASQUEIRA Impressora COZINHA

✔ Sem conversão
✔ Sem PDF
✔ Sem Ghostscript
✔ Sem risco de corrupção de dados


🔗 Downloads necessários

📥 MFileMon

  • Projeto oficial:


    https://github.com/LorenzoMonti/MFileMon
  • Versão utilizada:


    MFileMon 1.6.1

🛠️ Instalação

1️⃣ Instalar o MFileMon

  • Executar o instalador como Administrador

  • Concluir a instalação

  • Reiniciar o Windows (recomendado)


🖨️ Configuração da impressora virtual

Criar nova impressora

  1. Painel de Controle → Dispositivos e Impressoras

  2. Adicionar impressora

  3. Adicionar manualmente

  4. Criar nova porta:

    • Tipo: MFileMon

    • Nome da porta:


      MFP1:
  5. Driver:

    • POS 80 Generic (ou o driver POS já utilizado pelo sistema)

  6. Nome da impressora:


    GRUPO_IMPRESSORAS

⚠️ Esta é a impressora que o sistema irá utilizar.


⚙️ Configuração do MFileMon

📁 Output path


C:\temp_impressoes

📄 Filename pattern


pos%i.raw

☑️ Opções

  • ✅ Overwrite existing files

  • ❌ Use pipe to send data to user command (desmarcado)

  • ❌ Hide process (opcional)


🧩 Comando configurado no MFileMon

User command


cmd.exe /c copy /b "%f" "\\localhost\CAIXA" && copy /b "%f" "\\localhost\CHURRASQUEIRA" && copy /b "%f" "\\localhost\COZINHA"

Arguments

(vazio)


🖨️ Configuração das impressoras físicas

Requisitos obrigatórios

  1. As impressoras devem estar:

    • Instaladas no Windows

    • Funcionando normalmente

  2. Compartilhamento habilitado:

    • Propriedades da impressora

    • Aba Compartilhamento

    • Marcar: Compartilhar esta impressora

    • Nome simples, sem espaços extras:


      CAIXA CHURRASQUEIRA COZINHA

⚠️ O nome do compartilhamento deve ser exatamente igual ao usado no comando copy.


🧠 Por que usar copy /b?

🔍 Motivo técnico

O driver POS gera ESC/POS (RAW), ou seja:

  • Bytes de controle

  • Comandos binários

  • Sem formatação GDI ou PDF

O comando:


copy /b

✔️ Vantagens

  • /b = modo binário

  • Não altera nenhum byte

  • Não interpreta caracteres

  • Não converte encoding

  • Extremamente rápido

  • Compatível com qualquer POS

❌ O que NÃO usar

Método Motivo
Ghostscript Não interpreta ESC/POS
PDF Driver POS não gera PDF
GDI Drivers POS descartam jobs
PowerShell Pode alterar encoding
type Não é binário

🧪 Teste manual (recomendado)

Antes de testar pelo sistema:


copy /b C:\temp_impressoes\pos0.raw "\\localhost\CAIXA"

Se imprimir:
✔ Driver correto
✔ Compartilhamento correto
✔ Caminho correto


🛡️ Boas práticas adotadas

  • Uso de RAW direto

  • Nenhuma dependência externa

  • Sem serviços adicionais

  • Baixíssimo consumo de recursos

  • Ideal para:

    • Caixa

    • Cozinha

    • Churrasqueira

    • Expedição


🧾 Observações finais

  • Este método é amplamente utilizado em:

    • Restaurantes

    • PDVs

    • Sistemas legados

    • Ambientes críticos

  • A duplicação ocorre após o spool do sistema

  • Se uma impressora falhar, o job original não é corrompido


✅ Status da solução

✔ Funcionando em produção
✔ Impressão simultânea validada
✔ Sem alterações no sistema
✔ Alta confiabilidade

 

Captura de tela 2026-02-13 103955.png

Captura de tela 2026-02-13 103922.png

Captura de tela 2026-02-13 103939.pngCaptura de tela 2026-02-13 105012.pngCaptura de tela 2026-02-13 104957.pngCaptura de tela 2026-02-13 105032.png