Olá!
Não consigo fazer a ativação de uma ECF, sempre retorna que a Impressora não está respondendo. Porém, fiz os teste utilizando o ECFTeste e também o proprio testador da Bematech, ambos conseguem a comunicação! Tambem utilizei o teste que vem no exemplo, ele também ativa normalmente, tentei copiar mas não obtive sucesso. Abaixo deixarei o meu código (Uses incluso) e também o log.
OBS: Estou utilizando portas virtuais também.
Código:
[...]
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, OleCtrls, SHDocVw, ACBrBase, ACBrECF, ACBrECFVirtual,
ACBrECFVirtualPrinter, ACBrECFVirtualNaoFiscal, ACBrECFVirtualBuffer, XPMan, ACBrAAC, Spin;
[...]
begin
ACBrECF1.Modelo:=TACBrECFModelo(cmbmodelo.ItemIndex);
ACBrECF1.Porta:=cmbporta.Items[cmbporta.ItemIndex];
ACBrECF1.TimeOut:=30;
ACBrECF1.Ativar;
Application.ProcessMessages;
if ACBrECF1.Ativo then
begin
btnativar.Enabled:=false;
StatusBar1.Panels[0].Text:='ECF Ativa';
end;
end;
[..]
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Log:
ATIVAR - 26/10/16 16:40:30:316 - Modelo: Bematech - Porta: COM2 - TimeOut: 30
Device: BAUD=9600 DATA=8 PARITY=N STOP=1 HANDSHAKE=RTS/CTS HARDFLOW MAXBANDWIDTH=0 SENDBYTESCOUNT=0 SENDBYTESINTERVAL=0
--------------------------------------------------------------------------------
-- 26/10 16:40:30:316
-- 26/10 16:40:30:316 TX -> [STX][4][NUL][FS][19]/[NUL]
-- 26/10 16:40:30:331 16:40:30:331 RX <- ACK = 6 Falha: 0
-- 26/10 16:40:30:456 RX <- [NUL][NUL][NUL][NUL]
-- 26/10 16:40:30:472
-- 26/10 16:40:30:472 TX -> [STX][ENQ][NUL][FS]#)h[NUL]
-- 26/10 16:40:30:550 16:40:30:550 RX <- ACK = 6 Falha: 0
-- 26/10 16:40:30:691 RX <- [SOH][NUL][NUL][NUL][NUL][NUL][NUL]
-- 26/10 16:40:30:691
-- 26/10 16:40:30:691 TX -> [STX][ENQ][NUL][FS]#<{[NUL]
-- 26/10 16:40:30:769 16:40:30:769 RX <- ACK = 6 Falha: 0
-- 26/10 16:40:30:910 RX <- BEMATECH MP-2000 TH FI ECF-IF [NUL][NUL][NUL][NUL]
-- 26/10 16:40:30:910
-- 26/10 16:40:30:910 TX -> [STX][ENQ][NUL][FS]#[11]J[NUL]
-- 26/10 16:40:31:003 16:40:31:003 RX <- ACK = 6 Falha: 0
-- 26/10 16:40:31:144 RX <- [NUL][SOH][NUL][NUL][NUL][NUL]
-- 26/10 16:40:31:144
-- 26/10 16:40:31:144 TX -> [STX][ENQ][NUL][FS]#(g[NUL]
-- 26/10 16:40:31:222 16:40:31:222 RX <- ACK = 6 Falha: 0
-- 26/10 16:40:31:363 RX <- EMULADOR [NUL][NUL][NUL][NUL]
-- 26/10 16:40:31:363 Estado
-- 26/10 16:40:31:363 TX -> [STX][ENQ][NUL][FS]#[WAK]P[NUL]
-- 26/10 16:40:31:441 16:40:31:441 RX <- ACK = 6 Falha: 0
-- 26/10 16:40:31:581 RX <- [NUL][NUL][NUL][NUL][NUL]
-- 26/10 16:40:31:581
-- 26/10 16:40:31:581 TX -> [STX][ENQ][NUL][FS]#A[128][NUL]
-- 26/10 16:40:31:660 16:40:31:660 RX <- ACK = 6 Falha: 0
-- 26/10 16:41:04:003 RespostaComando: [NUL][NUL][NUL][NUL]
-- 26/10 16:41:04:003 RX <- [NUL][NUL][NUL][NUL]
-- 26/10 16:41:04:003
----------------- ERRO -----------------
Impressora Bematech não está respondendo
----------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Desde já agradeço a ajuda!