Clipper On Line • Ver Tópico - Declaração da dll InterfaceEpsonNF.dll

Declaração da dll InterfaceEpsonNF.dll

Discussão sobre a biblioteca Fivewin - O Clipper para Windows.

Moderador: Moderadores

 

Declaração da dll InterfaceEpsonNF.dll

Mensagempor Cristovam » 30 Jul 2014 22:05

Boa noite a todos,

Alguém já conseguiu elaborar as declarações das funções para impressora Epson TM-T20, para funcionar com a DLL (InterfaceEpsonNF.dll)

O link para o Manual com o nome das funções: http://global.latin.epson.com/br/Catalo ... -e-Suporte.

Tem declaração para Delphi e visual basic, mas não para harbour/xharbour

Grato a todos que poder auxiliar
Cristovam
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 11
Data de registro: 22 Jan 2011 10:25
Cidade/Estado: POCONE/Mato grosso BR
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Declaração da dll InterfaceEpsonNF.dll

Mensagempor Kapiaba » 31 Jul 2014 09:17

Olá, veja se te ajuda:

#Include "Fivewin.Ch"

STATIC XDLL_EPSON  //-> DLL DA IMPRESSORA FISCAL EPSON TMT81

/*****************************************************************************/
/* Declaração de funções da DLL 32 Bits para cupom fiscal TMT81              */
/*****************************************************************************/
// Abre porta de comunicacao

DLL32 FUNCTION EpAbrPorCo(Veloc    AS PTR,;
                          Port     AS PTR) AS LONG PASCAL;
      FROM "EPSON_Serial_Abrir_Porta"       LIB XDLL_EPSON

// Fecha porta de comunicacao
DLL32 FUNCTION EpFecPorCo(             ) AS LONG PASCAL;
      FROM "EPSON_Serial_Fechar_Porta"      LIB XDLL_EPSON

// EFetua recebimento nao fiscal MFD
DLL32 FUNCTION EpEfRcNFMFD( vNroOp       AS LPSTR,;
                            vVlrOp       AS LPSTR,;
                            nCasDec      AS   PTR ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Vender_Item"                 LIB XDLL_EPSON

// Fecha Comprovante nao Fiscal
DLL32 FUNCTION EpFcRecNfMF( OpCortaPapel     AS BOOL ) AS LONG PASCAL ;
      FROM "EPSON_NaoFiscal_Fechar_Comprovante" LIB XDLL_EPSON

// Verifica Corte Gilhotina
DLL32 FUNCTION EpVerCorGui( @ST1          AS BOOL   ) AS LONG PASCAL;
      FROM "EPSON_Obter_Estado_Corte_Papel"              LIB XDLL_EPSON

// Ativa Corte Gilhotina
DLL32 FUNCTION EpAtvCrtCup( lOpCorPap      AS BOOL  ) AS LONG PASCAL;
      FROM "EPSON_Config_Corte_Papel"                    LIB XDLL_EPSON

// cancelamento recebimento
DLL32 FUNCTION EpCanRecNFs(                         ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Cancelar_Comprovante" LIB XDLL_EPSON

// Programa um caracter gráfico para autenticação
DLL32 FUNCTION EpPrgCrAut( vDadLog          AS LPSTR,;
                           nTamCam             AS PTR,;
                           nLinha1          AS LPSTR ) AS LONG PASCAL ;
      FROM "EPSON_Config_Logotipo" LIB XDLL_EPSON

// Cancela impressão de cheque
DLL32 FUNCTION EpCanImChq(                         ) AS LONG PASCAL ;
      FROM "EPSON_Cheque_Cancelar_Impressao" LIB XDLL_EPSON

// Nomeia Totalizadores Nao fiscais
DLL32 FUNCTION EpNomToNSI( vDesTot     AS LPSTR,;
                           @nIdTot      AS   PTR) AS LONG PASCAL ;
      FROM "EPSON_Config_Totalizador_NaoFiscal" LIB XDLL_EPSON

// Retorna os dados da impressora no momento da última Redução Z
DLL32 FUNCTION EpDadUlRed( vUltRed         AS LPSTR ) AS LONG PASCAL;
      FROM "EPSON_Obter_Dados_Ultima_RZ"                 LIB XDLL_EPSON

// Programa os espacamentos de linhas entre os cupons
DLL32 FUNCTION EpVerLECup( EspCup    AS LPSTR      ) AS LONG PASCAL;
      FROM "EPSON_Config_Espaco_Entre_Documentos"      LIB XDLL_EPSON

// Programa os espacamento entre as linhas no cupom
DLL32 FUNCTION EpVerEsLin( vEspLin         AS LPSTR    ) AS LONG PASCAL;
      FROM "EPSON_Config_Espaco_Entre_Linhas"               LIB XDLL_EPSON

//Programa o nome da moeda no singular e no plural para a expresão em cheque
DLL32 FUNCTION EpPrgMoSin( vSing         AS LPSTR,;
                           vPlural       AS LPSTR) AS LONG PASCAL ;
      FROM "EPSON_Cheque_Configurar_Moeda"            LIB XDLL_EPSON

//Programa Aliquota ECF
DLL32 FUNCTION EpProAlEcf( Valor           AS LPSTR,;
                           IssIcms         AS BOOL    ) AS LONG PASCAL;
      FROM "EPSON_Config_Aliquota"                          LIB XDLL_EPSON

//Recebe os dados da Leitura X pela serial e grava em arquivo texto
DLL32 FUNCTION EpLeiLXSer( vDiretorio   AS LPSTR ) AS LONG PASCAL;
      FROM "EPSON_RelatorioFiscal_Salvar_LeituraX"    LIB XDLL_EPSON

//Numero de Interverções Fiscais
DLL32 FUNCTION EpNumInFis( Intervencoes AS LPSTR   ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Contadores"                 LIB XDLL_EPSON

//Imprimi Cheque
DLL32 FUNCTION EpImChqEcf( vNroReg     AS LPSTR,;
                           vValor      AS LPSTR,;
                           nCasDec       AS PTR,;
                           vNominal    AS LPSTR,;
                           vCidade     AS LPSTR,;
                           vData       AS LPSTR,;
                           vTextoAd    AS LPSTR ) AS LONG PASCAL ;
      FROM "EPSON_Cheque_Imprimir" LIB XDLL_EPSON

//Programa horario de verao
DLL32 FUNCTION EpPrgHrVer(         )  AS LONG PASCAL;
      FROM "EPSON_Config_Horario_Verao" LIB XDLL_EPSON

//Obtem horario de verao
DLL32 FUNCTION EpEstHorVer( @lEstHrVer   AS PTR )  AS LONG PASCAL;
      FROM "EPSON_Obter_Estado_Horario_Verao"           LIB XDLL_EPSON

//Autentica Documentos
DLL32 FUNCTION EpAutDcEcf( vTexto      AS LPSTR ) AS LONG PASCAL ;
      FROM "EPSON_Autenticar_Imprimir" LIB XDLL_EPSON

//Retorna Moeda Corrente
DLL32 FUNCTION EpSimMoCur( vMoeda     AS LPSTR    ) AS LONG PASCAL;
      FROM "EPSON_Obter_Simbolo_Moeda"                 LIB XDLL_EPSON

// Verifica Qtd Casas Decimais
DLL32 FUNCTION EpVerCasD( vCasDec        AS LPSTR  ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Casas_Decimais" LIB XDLL_EPSON
     

//Retorna CGC e Inscricao Estadual do Cliente
DLL32 FUNCTION EpCgcIECli( vDadosCli         AS LPSTR ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Dados_Usuario" LIB XDLL_EPSON

// Identificação do Consumidor
DLL32 FUNCTION EpIdeCoCup( vCNPJ        AS LPSTR,;
                           vNome        AS LPSTR,;
                           vEnd1        AS LPSTR,;
                           vEnd2        AS LPSTR,;
                           nOpImp       AS   PTR ) AS LONG PASCAL;
      FROM "EPSON_Fiscal_Dados_Usuario"               LIB XDLL_EPSON

//Cancela item generico
DLL32 FUNCTION EpCanItGen( NroIte      AS LPSTR     ) AS LONG PASCAL;
      FROM "EPSON_Fiscal_Cancelar_Item"                  LIB XDLL_EPSON
//Vende ítem
DLL32 FUNCTION EpVendItem( Codigo      AS LPSTR,;
                           Descricao   AS LPSTR,;
                           Quantid     AS LPSTR,;
                           CasDecQtd   AS   PTR,;
                           Unidade     AS LPSTR,;
                           ValUnit     AS LPSTR,;
                           CasDecVlr   AS   PTR,;
                           Aliquota    AS LPSTR,;
                           QtdLinha    AS   PTR ) AS LONG PASCAL;
      FROM "EPSON_Fiscal_Vender_Item"               LIB XDLL_EPSON

//Efetua Forma de Pagamento com ID da Forma
DLL32 FUNCTION EpEfeFrPgd( IdPgt         AS LPSTR,;
                           VlrPgt        AS LPSTR,;
                           NroCas          AS PTR,;
                           Linha1        AS LPSTR,;
                           Linha2        AS LPSTR        ) AS LONG PASCAL;
      FROM "EPSON_Fiscal_Pagamento"                           LIB XDLL_EPSON

//Verifica ultimo item vendido
DLL32 FUNCTION EpUltItVen( vRet1       AS LPSTR     ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Numero_Ultimo_Item"              LIB XDLL_EPSON

// Programa Forma de Pagamento
DLL32 FUNCTION EpProgFpgt( VincNvinc       AS BOOL,;
                           IdFrmPgt        AS LPSTR,;
                           DescFrmPgto     AS LPSTR    ) AS LONG PASCAL ;
      FROM "EPSON_Config_Forma_Pagamento" LIB XDLL_EPSON

//Verifica a retorno aliquotas
DLL32 FUNCTION EpVerReAlq( Aliquotas   AS LPSTR   ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Tabela_Aliquotas" LIB XDLL_EPSON

//Verifica a versão do firmware
DLL32 FUNCTION EpVerFiWar( vRet1       AS LPSTR     ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Dados_Impressora" LIB XDLL_EPSON

//Verifica o numero de serie da ecf e MFD
DLL32 FUNCTION EpVerNuSer( ST1       AS LPSTR   ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Dados_Impressora" LIB XDLL_EPSON

//Recebimento não fiscal MFD
DLL32 FUNCTION EpEfeRnfMf( vCNPJ         AS LPSTR,;
                           vRazao        AS LPSTR,;
                           vEnd1         AS LPSTR,;
                           vEnd2         AS LPSTR,;
                           nOpCab        AS   PTR   ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Abrir_Comprovante"     LIB XDLL_EPSON

//Verifica o status da impressora
DLL32 FUNCTION EpVerStImp( Resposta AS LPSTR ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Estado_Impressora"        LIB XDLL_EPSON
     
//Verifica o status do ultimo comando     
DLL32 FUNCTION EpStUltCmd( CodErr  AS LPSTR,;
                           RespErr AS LPSTR ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Mensagem_Erro"           LIB XDLL_EPSON

//Ler total do cupom
DLL32 FUNCTION EpSubTotal( SubTotal    AS STRING  ) AS LONG PASCAL ;
      FROM "EPSON_Fiscal_Obter_SubTotal"                 LIB XDLL_EPSON

//Ler número do caixa
DLL32 FUNCTION EpNumeroCx( NumeroCaixa AS LPSTR     ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Numero_ECF_Loja" LIB XDLL_EPSON

//Ler data do movimento
DLL32 FUNCTION EpDtMovto(DtHrMovto     AS LPSTR) AS LONG PASCAL ;
      FROM "EPSON_Obter_Data_Hora_Jornada"          LIB XDLL_EPSON

//Ler data e hora da impressora
DLL32 FUNCTION EpDtHora( DtHs AS LPSTR ) AS LONG PASCAL;
      FROM "EPSON_Obter_Hora_Relogio"       LIB XDLL_EPSON

//Ler Status do Movimento
DLL32 FUNCTION EpObEstImp( Status AS LPSTR ) AS LONG PASCAL;
      FROM "EPSON_Obter_Dados_Jornada"      LIB XDLL_EPSON
//Inicia Dia
DLL32 FUNCTION EpAbrDiaFi( )            AS LONG PASCAL ;
      FROM "EPSON_RelatorioFiscal_Abrir_Dia" LIB XDLL_EPSON
//Ler flag fiscal da impressora e de documentos não fiscal   
DLL32 FUNCTION EpFlagFisc( @FlagFiscal AS LPSTR   ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Estado_Cupom" LIB XDLL_EPSON

//Emite leitura X
DLL32 FUNCTION EpLeituraX(             ) AS LONG PASCAL;
      FROM "EPSON_RelatorioFiscal_LeituraX" LIB XDLL_EPSON

//Emite redução Z
DLL32 FUNCTION EpReducaoZ(  vData           AS LPSTR,;
                            vHoras          AS LPSTR,;
                            nOpHorVer       AS   PTR,;
                            vCRZ             AS LPSTR ) AS LONG PASCAL ;
      FROM "EPSON_RelatorioFiscal_RZ" LIB XDLL_EPSON

//Abre cupom fiscal
DLL32 FUNCTION EpAbreCup ( CNPJ              AS LPSTR,;
                           Razao             AS LPSTR,;
                           End1              AS LPSTR,;
                           End2              AS LPSTR,;
                           OpImpCli          AS    PTR ) AS LONG PASCAL ;
      FROM "EPSON_Fiscal_Abrir_Cupom" LIB XDLL_EPSON

//Verifica se tem impressora ligada
DLL32 FUNCTION EpPrintLig(           ) AS LONG PASCAL;
      FROM "EPSON_Serial_Obter_Estado_Com" LIB XDLL_EPSON

//Cancela cupom fiscal
DLL32 FUNCTION EpCanCupom(                       ) AS LONG PASCAL;
      FROM "EPSON_Fiscal_Cancelar_Cupom"             LIB XDLL_EPSON

//Cancela Comprovante de Credito Debito (Cupom Vinculado)
DLL32 FUNCTION EpCanCcdNf( vIdFrmPgt        AS LPSTR,;
                           vVllrPgt         AS LPSTR,;
                           nCasDec          AS   PTR,;
                           vNroParc         AS LPSTR,;
                           vNroCup          AS LPSTR ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Cancelar_CCD"              LIB XDLL_EPSON

//Retorna Informação sobre ultimo documento
DLL32 FUNCTION EpInfUtDoc( vUltDoc    AS LPSTR ) AS    LONG PASCAL;
      FROM "EPSON_Obter_Informacao_Ultimo_Documento"  LIB XDLL_EPSON

//Cancela último ítem do cupom
DLL32 FUNCTION EpCancItem(                          ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Cancelar_Ultimo_Item"        LIB XDLL_EPSON

//Ler número do cupom
DLL32 FUNCTION EpNumCupom( Cupom       AS LPSTR     ) AS LONG PASCAL ;
      FROM "EPSON_Obter_Contadores"                      LIB XDLL_EPSON

//Emite cupom gerencial
DLL32 FUNCTION EpCpGerAbr( Texto AS LPSTR            ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Abrir_Relatorio_Gerencial"    LIB XDLL_EPSON

//Fecha cupom gerencial
DLL32 FUNCTION EpCpGerFec(   OpCortar  AS  BOOL         ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Fechar_CCD"                  LIB XDLL_EPSON

//Abre a gaveta
DLL32 FUNCTION EpAbreGav (                          ) AS LONG PASCAL ;
      FROM "EPSON_Impressora_Abrir_Gaveta"             LIB XDLL_EPSON

//Abre cupom adicional
DLL32 FUNCTION EpCupAdAbr( vIdFormaPgto   AS LPSTR,;
                           vValor         AS LPSTR,;
                           nNroCas        AS   PTR,;
                           vNroPar        AS LPSTR ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Abrir_CCD"               LIB XDLL_EPSON

// Imprime cupom não fiscal vinculado
DLL32 FUNCTION EpCupAdUsa( Texto       AS LPSTR ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Imprimir_LinhaEX"       LIB XDLL_EPSON

// Fecha Comprovante de Credito Debito
DLL32 FUNCTION EpCupAdFec( lOpCorPap AS BOOL    ) AS LONG PASCAL;
      FROM "EPSON_NaoFiscal_Fechar_CCD"              LIB XDLL_EPSON

//Fecha Cupom
DLL32 FUNCTION EpFechaCup( CortaPapel  AS BOOL,;
                           ImpCupAd    AS BOOL ) AS LONG PASCAL ;
       FROM "EPSON_Fiscal_Fechar_Cupom"    LIB XDLL_EPSON

// Imprime Menssagem no fechamento cupom
DLL32 FUNCTION EpTerFeCup( Linha1    AS LPSTR,;
                           Linha2    AS LPSTR,;
                           Linha3    AS LPSTR,;
                           Linha4    AS LPSTR,;
                           Linha5    AS LPSTR,;
                           Linha6    AS LPSTR,;
                           Linha7    AS LPSTR,;
                           Linha8    AS LPSTR ) AS LONG PASCAL;
       FROM "EPSON_Fiscal_Imprimir_Mensagem"       LIB XDLL_EPSON
       
// Imprime Menssagem de Aplicação
DLL32 FUNCTION EpMsgApl(   Linha1    AS LPSTR,;
                           Linha2    AS LPSTR  ) AS LONG PASCAL;
       FROM "EPSON_Fiscal_Mensagem_Aplicacao"       LIB XDLL_EPSON

// Efetua o Download de um cupom do Memoria Fiscal
DLL32 FUNCTION EpDwnCuMfd( vCOO1       AS LPSTR,;
                           vCOO2       AS LPSTR,;
                           nOpEnt        AS PTR,;
                           nOpImp        AS PTR,;
                           nAtoCotep     AS PTR,;
                           nOPSintegra   AS PTR,;
                           vArqSaid    AS LPSTR ) AS LONG PASCAL ;
       FROM "EPSON_Obter_Dados_MF_MFD" LIB XDLL_EPSON

// Acrescimo ou Desconto no item.
DLL32 FUNCTION EpEfeAcDes( VlrDesAcr   AS LPSTR,;
                          CasDec       AS PTR,;
                          DesAcr       AS BOOL,;
                          PorVlr       AS BOOL ) AS LONG PASCAL ;
       FROM "EPSON_Fiscal_Desconto_Acrescimo_Item" LIB XDLL_EPSON

// Acrescimo ou Desconto no Cupom
DLL32 FUNCTION EpEfeAcDesCup(VlrDesAcr AS LPSTR,;
                             CasDec       AS PTR,;
                             DesAcr       AS BOOL,;
                             PorVlr       AS BOOL   ) AS LONG PASCAL;
       FROM "EPSON_Fiscal_Desconto_Acrescimo_Subtotal" LIB XDLL_EPSON

// Efetua Forma de Pagamento Não Fiscal
DLL32 FUNCTION EpEfFPgNf( vIDPgt      AS LPSTR,;
                          vValor      AS LPSTR,;
                          nCasDec       AS PTR,;
                          vLinha1     AS LPSTR,;
                          vLinha2     AS LPSTR ) AS LONG PASCAL ;
      FROM "EPSON_NaoFiscal_Pagamento" LIB XDLL_EPSON

//Leitura da memoria fiscal serial por DATA Serial MFD Ou Por Reduçoes
DLL32 FUNCTION EpLeiMfdDt( vData1      AS LPSTR,;
                           vData2      AS LPSTR,;
                           nTipImp     AS   PTR,;
                           vRetorno    AS LPSTR,;
                           vNomArq     AS LPSTR,;
                           nNroByt     AS   PTR,;
                           nBuffer     AS   PTR  ) AS LONG PASCAL ;
      FROM "EPSON_RelatorioFiscal_Leitura_MF" LIB XDLL_EPSON

//Retornar o Totalizador Geral
DLL32 FUNCTION EpRetGraTo( vRetTotal  AS LPSTR ) AS LONG PASCAL ;
       FROM "EPSON_Obter_GT"    LIB XDLL_EPSON

/// Fim TMT81


Veja também:
http://fivewin.com.br/index.php?/topic/21974-epsons-tm-t20/?hl=tm-t20
Nota de Moderação:
Toledo: Mensagem foi editada para informar link da fonte de informação que estava em uma outra mensagem deste tópico.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Declaração da dll InterfaceEpsonNF.dll

Mensagempor Cristovam » 02 Ago 2014 18:10

Kapiaba,

As declarações são para impressora TM-T20, e a DLL é a InterfaceEpsonNF.dll. As funções estão descritas no Manual do arquivo anexo, eu já declarei mas não quer dar certo. Veja:
DLL32 Function ETaxa(nTaxa AS _INT) AS LONG PASCAL;
FROM "ConfiguraTaxaSerial" LIB "InterfaceEpsonNF.Dll"
DLL32 Function EInicia_Porta(Nome_Porta AS LPSTR ) AS WORD PASCAL;
FROM "IniciaPorta" LIB "InterfaceEpsonNF.Dll"

DLL32 Function EFecha_Porta() AS _INT PASCAL FROM "FechaPorta" LIB "INTERFACEEPSONNF.DLL"

DLL32 Function EImprimeTexto(cTexto AS STRING ) AS _INT PASCAL;
FROM "ImprimeTexto" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EImpTextoTag(cTexto AS STRING )AS _INT PASCAL;
FROM "ImprimeTextoTag" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EFormataTX(cTexto AS STRING,nTipoLetra AS _INT,Nitalico AS _INT,;
nSublin AS _INT,nExpan AS _INT,nEnfat AS _INT) AS _INT PASCAL;
FROM "FormataTX" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EGuilhotina(nCorte AS _INT) AS _INT PASCAL;
FROM "AcionaGuilhotina" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function ELe_Status() AS _INT PASCAL FROM "Le_Status" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EGaveta() AS _INT PASCAL FROM "Le_Status_Gaveta" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EConf_Cod_Barras(nAltura AS _INT,nLarg AS _INT,nPos AS _INT,;
nTFonte AS _INT,nMargem AS _INT) as _INT PASCAL;
FROM "ConfiguraCodigoBarras" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EImp_Cod_Barra(cBarras AS STRING) AS -INT PASCAL;
FROM "ImprimeCodigoBarrasCODABAR" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EImp_EAN13(cEAN13 AS STRING) AS _INT PASCAL;
FROM "ImprimeCodigoBarrasEAN13" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EImp_QRCode(nResta AS _INT,nTamod AS _INT,nTipo AS _INT,nVersao AS _INT,;
nModo AS _INT,Codigo AS STRING) AS _INT PASCAL;
FROM "ImprimeCodigoQRCODE" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EGera_QRCode(cNome AS STRING,cDados AS STRING) AS _INT PASCAL;
FROM "GeraQRCodeArquivo" LIB "INTERFACEEPSONNF.DLL"
DLL32 Function EImp_Bmp(cArq AS STRING,nHescala AS _INT,nVescala AS _INT,nAng_IMP AS _INT);
AS _INT PASCAL FROM "ImprimeBmpEspecial" LIB "INTERFACEEPSONNF.DLL"
********************************************************************************
Return "INTERFACEEPSONNF.DLL"
********************************************************************************

Não funciona
Anexos
ManualInterfaceEpsonNF_1_1_4.pdf
(534 KiB) Baixado 329 vezes
Cristovam
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 11
Data de registro: 22 Jan 2011 10:25
Cidade/Estado: POCONE/Mato grosso BR
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Declaração da dll InterfaceEpsonNF.dll

Mensagempor Kapiaba » 04 Ago 2014 09:33

Olá, postei no forum fivewin, para ver se o pessoal te ajuda, veja o link que o senhor Toledo editou.

abs,
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Declaração da dll InterfaceEpsonNF.dll

Mensagempor Kapiaba » 04 Ago 2014 16:02

Olá, veja resposta do pessoal no forum fivewin.

miragerr escreveu:Ola amigos

Kapi meu jovem, é melhor usar a TPRINT ou mesmo a FASTREPORT com o DRIVER DA IMPRESSORA instalado do que usar DLL, pois com DLL você usa somente uma impressora especifica, com o DRIVER instalado não precisa disso, pois você faz um formulário e funciona para qualquer impressora. é como se fosse uma impressora JATO DE TINTA, LASER e afins. EU faço isso até para impressoras de CÓDIGOS DE BARRA, pois tem sempre uma diferente no mercado, se tiver o DRIVER é só instalar e pronto.

Espero ter ajudado.

Fonte: http://fivewin.com.br/index.php?/topic/21974-epsons-tm-t20/

abs.
Nota de Moderação:
Toledo: Mensagem foi editada para colocar o quote com a resposta da dúvida.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Declaração da dll InterfaceEpsonNF.dll

Mensagempor Cristovam » 04 Ago 2014 20:01

Grato pela resposta. Mas veja: O problema é que preciso utilizar esta impressora específica. Só que, pelo que estou sentindo, ninguém tem ainda uma solução e como a Epson não tem supor para Harbou/xHarbour (tem em básic, imagina!?), a coisa ficou meio dificil. Mas vamos pelejando, uma hora a coisa funciona.

Obrigado pela atenção.
Cristovam
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 11
Data de registro: 22 Jan 2011 10:25
Cidade/Estado: POCONE/Mato grosso BR
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Declaração da dll InterfaceEpsonNF.dll

Mensagempor rochinha » 05 Ago 2014 00:37

Amiguinho,

Tenho pra mim que muitos não usam tantas APIs e preferem usar a integração ACBr, a não ser que queiram PAF em seus aplicativos e tem clientes com um leque mais reduzido de impressoras.

Meus clientes usam muitas Bematech, Daruma e poucos outras. Eu mesmo não uso várias APIs porque não preciso de PAF e meu ECF atende o necessário em meus clientes.

Ao implementar as declarações algumas APIs usam retorno PASCAL outras não e voce pode omitir este parametro.
...AS BOOL PASCAL LIB...


Por:
...AS BOOL LIB...


No caso da vinculação da .DLL tenha certeza que os nomes das funções estão capitalizadas como na .DLL. ABRECUPOM é diferente de AbreCupom.

Ao criar as suas funções diferencie um pouco do nome de SUA função da que está na .DLL, do mesmo jeito que voce fez.

Chame as funções da .DLL de forma indireta.
#define "fivewin.ch"

#define EpsonNF "InterfaceEpsonNF.dll"

function main( DLL )
   public hDLL

   hDLL   := LoadLibrary( EpsonNF )

   if hDLL > 0
      ...
   endif
   return nil
                                                                                                           
DLL32 FUNCTION _FuncaoInterna( cParametroSTR AS STRING, nParametroINT AS _INT ) AS BOOL FROM "FuncaoInterna" LIB EpsonNF


E finalmente se a impressora for NÃO FISCAL, não perca tempo fazendo transposição de funções(a não ser que não queira somente emitir um cuponzinho). De um simples comando DIR > COM1(se ela estiver configurada para esta porta e passou nos testes) e veja o resultado.

Demais ,boa sorte e bom trabalho.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4538
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 800 vezes
Mens.Curtidas: 242 vezes

Declaração da dll InterfaceEpsonNF.dll

Mensagempor Kapiaba » 05 Ago 2014 11:02

Olá, não sei todas as declarações, mas é +- assim:

#define "fivewin.ch"

STATIC XDLL_EPSON  //-> DLL DA IMPRESSORA FISCAL EPSON

FUNCTION Vendas_Cupom()

   XDLL_EPSON := LoadLibrary( "InterfaceEpsonNF.dll" )

   ... seu aplicativo

RETURN NIL

DLL32 Function ETaxa(nTaxa AS LONG) AS LONG PASCAL;
FROM "ConfiguraTaxaSerial" LIB XDLL_EPSON

DLL32 Function EInicia_Porta(Nome_Porta AS LPSTR ) AS LONG PASCAL;
FROM "IniciaPorta" LIB XDLL_EPSON

// Fecha porta de comunicacao
DLL32 Function EFecha_Porta() AS LONG PASCAL ;
      FROM "FechaPorta" LIB XDLL_EPSON

DLL32 Function EImprimeTexto( cTexto AS LPSTR ) AS LONG PASCAL;
FROM "ImprimeTexto" LIB XDLL_EPSON

DLL32 Function EImpTextoTag(cTexto AS LPSTR ) AS LONG PASCAL;
FROM "ImprimeTextoTag" LIB XDLL_EPSON

DLL32 Function EFormataTX(cTexto AS LPSTR,nTipoLetra AS LONG,Nitalico AS LONG,;
nSublin AS LONG,nExpan AS LONG,nEnfat AS LONG) AS LONG PASCAL;
FROM "FormataTX" LIB XDLL_EPSON

DLL32 Function EGuilhotina(nCorte AS LONG) AS LONG PASCAL;
FROM "AcionaGuilhotina" LIB XDLL_EPSON

DLL32 Function ELe_Status() AS LONG PASCAL FROM "Le_Status" LIB XDLL_EPSON

DLL32 Function EGaveta() AS LONG PASCAL FROM "Le_Status_Gaveta" LIB XDLL_EPSON

DLL32 Function EConf_Cod_Barras(nAltura AS LONG,nLarg AS LONG,nPos AS LONG,;
nTFonte AS LONG,nMargem AS LONG) as LONG PASCAL;
FROM "ConfiguraCodigoBarras" LIB XDLL_EPSON

DLL32 Function EImp_Cod_Barra(cBarras AS LPSTR) AS -INT PASCAL;
FROM "ImprimeCodigoBarrasCODABAR" LIB XDLL_EPSON

DLL32 Function EImp_EAN13(cEAN13 AS LPSTR) AS LONG PASCAL;
FROM "ImprimeCodigoBarrasEAN13" LIB XDLL_EPSON

DLL32 Function EImp_QRCode(nResta AS LONG,nTamod AS LONG,nTipo AS LONG,nVersao AS LONG,;
nModo AS LONG,Codigo AS LPSTR) AS LONG PASCAL;
FROM "ImprimeCodigoQRCODE" LIB XDLL_EPSON

DLL32 Function EGera_QRCode( cNome AS LPSTR, cDados AS LPSTR) AS LONG PASCAL;
FROM "GeraQRCodeArquivo" LIB XDLL_EPSON

DLL32 Function EImp_Bmp(cArq AS LPSTR,nHescala AS LONG,nVescala AS LONG,nAng_IMP AS LONG);
AS LONG PASCAL FROM "ImprimeBmpEspecial" XDLL_EPSON


Abs.
Kapiaba
Colaborador

Colaborador
 
Mensagens: 1765
Data de registro: 07 Dez 2012 15:14
Cidade/Estado: São Paulo
Curtiu: 310 vezes
Mens.Curtidas: 119 vezes

Declaração da dll InterfaceEpsonNF.dll

Mensagempor JoséQuintas » 05 Ago 2014 11:49

Um pouco que vi sobre DLLs no VB6:

- Tem que verificar o tipo de parâmetro ou pode dar GPF
- Algumas variáveis são pointer, que significa passadas por referência, igual a usar @variavel na chamada ou dá GPF
- Variáveis string por referência não podem ser menores que o resultado ou dá GPF - o tamanho NÃO É ajustado automaticamente como numa função normal, e com certeza não pode ser maior que o máximo definido na DLL

Exemplo:
Tem API do Windows onde a string é limitada a 255 caracteres, e por referência.
Como não dá pra saber o tamanho do retorno, tem que passar por referência uma variável string de 255 caracteres.
Depois da chamada, precisa ajustar para retirar o tamanho excedente do retorno, porque vai retornar com 255 caracteres contendo um "lixo" extra.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18014
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes




Retornar para FiveWin

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 5 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro