Ir para conteúdo
  • Cadastre-se

lcarakaki

Membros
  • Total de ítens

    20
  • Registro em

  • Última visita

Últimos Visitantes

630 visualizações

lcarakaki's Achievements

Apprentice

Apprentice (3/14)

  • First Post
  • Collaborator Rare
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges

2

Reputação

  1. Bingo! Funcionou!!! Obrigado @Juliomar Marchetti
  2. Boa tarde a todos! Utilizo a LIB para emissão de NFe perfeitamente no Windows 10, mas nos Windows 7 estou tento problemas: Segue erros: Erro Interno: 10091♪ Erro HTTP: 500♪ URL: https://nfe.fazenda.sp.gov.br/ws/nfeconsultaprotocolo4.asmx♪ Network subsystem is unusable Já deixei o Windows 100% atualizado tentei desmarcar as opções de TLS 1.0 e 1.1, deixando apenas a 1.2 tentei desatualizando o firewall Tentei desativando o antivírus Alguém já teve esse tipo de problema utilizando o Windows 7? Segue log Grato desde já ACBrLibNFE-20210226.log
  3. @Rafael Dias, fiz algumas modificações no prg acbrnfe.prg e funcionou! São elas: Método ValidarRegrasdeNegocios não tinha variável para o retorno. Método EnviarEmail estava com variáveis invertidas na chamada do método do prg e do método da dll Destroy() não era um método e sim uma procedure, mudei para método As correções ficaram assim: METHOD ValidarRegrasdeNegocios() CLASS ACBrNFe local hResult, buffer, bufferLen bufferLen := STR_LEN buffer := Space(bufferLen) hResult := DllCall(::hHandle, DLL_OSAPI, "NFE_ValidarRegrasdeNegocios", @buffer, @bufferLen) ::CheckResult(hResult) RETURN ::ProcessResult(buffer, bufferLen) METHOD EnviarEmail(ePara, eChaveNFe, aEnviaPDF, eAssunto, eCc, eAnexos, eMensagem) CLASS ACBrNFe local hResult hResult := DllCall(::hHandle, DLL_OSAPI, "NFE_EnviarEmail", hb_StrToUTF8(ePara), hb_StrToUTF8(eChaveNFe), aEnviaPDF, eAssunto, hb_StrToUTF8(eCc), hb_StrToUTF8(eAnexos), eMensagem) ::CheckResult(hResult) RETURN nil METHOD Destroy CLASS ACBrNFe DllCall(::hHandle, DLL_OSAPI, "NFE_Finalizar") DllUnload(::hHandle) RETURN nil obrigado pela ajuda!
  4. @Rafael Dias, adaptei meu programa para usar o PRG do exemplo do SVN, e estou tendo o retorno "-10, Access violation" no método de validar regras de negócio. o Erro é na chamada do método CheckResult, coloquei em vermelho as linhas que o xHarbour destaca ao fechar o programa. METHOD ValidarRegrasdeNegocios() CLASS ACBrNFe local hResult hResult := DllCall(::hHandle, DLL_OSAPI, "NFE_ValidarRegrasdeNegocios") ::CheckResult(hResult) RETURN nil METHOD CheckResult(hResult) CLASS ACBrNFe local buffer, bufferLen, oErr if hResult >= 0 RETURN nil endif bufferLen := STR_LEN buffer := Space(bufferLen) DllCall(::hHandle, DLL_OSAPI, "NFE_UltimoRetorno", @buffer, @bufferLen) if bufferLen > STR_LEN buffer := Space(bufferLen) DllCall(::hHandle, DLL_OSAPI, "NFE_UltimoRetorno", @buffer, @bufferLen) endif oErr := ErrorNew() oErr:Severity := ES_ERROR oErr:Description := hb_UTF8ToStr(buffer) Throw(oErr) RETURN nil Abaixo está o meu PRG modificado. Log ACBR: ACBrLibNFE-20201223.log FUNCTION ACBR_CRIA_ASSINA_VALIDA_ENVIA(xTxt,xChaveNfe) LOCAL cRet,xLocalXml,xXml,lAssinaValidaEnvia:=.T. LOCAL xPara,xCopias,xAssunto,xMensagem ** Nome do XML e local de onde será salvo xXml:=xChaveNfe+"-nfe.xml" xLocalXml:=pDisco+":\xHB\nfe\"+UPPER(pUnidadeUf)+"\XML\" xPdf:=xChaveNfe+"-nfe.pdf" xLocalPdf:=pDisco+":\xHB\nfe\"+UPPER(pUnidadeUf)+"\PDF\" ** Iniciar arquivo de configurações do ACBR nfe:=ACBrNFe():New(pUnidadeUf+"_NFE.INI","") ** Consulta a chave para saber se já é uma NFe Autorizada para uso cRet:=nfe:Consultar(xChaveNfe,.T.) if at("Consumo Indevido",cRet)>0 alert("Consumo Indevido;;Aguarde alguns minutos e tente novamente") nfe:Destroy() RETURN .F. endif if at("Autorizado o uso da NF-e",cRet)>0 lAssinaValidaEnvia:=.F. ** Pega a data correta em que a Nfe foi emitida q:="select concat(year(b09demi),lpad(month(b09demi),2,'0')) as pasta from nfec where chavenfe='"+xChaveNfe+"'" v:=F_GETCON(q) if len(v)==0 alert("Erro ao localizar a chave no Nfec;"+xChaveNfe) nfe:Destroy() RETURN .F. endif xPastaAno:=v[1,1] xLocalXml:=xLocalXml+xPastaAno+"\" xLocalPdf:=xLocalPdf+xPastaAno+"\" ** Verifica se o arquivo XML existe na pasta if ! FILE(xLocalXml+xXml) ** Para garantir cria a pasta do anomes do XML e PDF FT_MKDIR(xLocalXml) FT_MKDIR(xLocalPdf) alert("NFe autorizada, porem arquivo xml nao localizado na pasta:;"+xLocalXml+xXml+";Faca o download pelo site do SEFAZ e coloque na pasta indicada") nfe:Destroy() RETURN .F. endif else xLocalXml:=xLocalXml+strZero(year(date_sql()),4)+strZero(month(date_sql()),2)+"\" xLocalPdf:=xLocalPdf+strZero(year(date_sql()),4)+strZero(month(date_sql()),2)+"\" endif ** Para garantir cria a pasta do anomes do XML e PDF FT_MKDIR(xLocalXml) FT_MKDIR(xLocalPdf) if lAssinaValidaEnvia ** Carrega o arquivo TXT da NFe nfe:CarregarINI(xTxt) ** Valida regras de negócio da NFe cRet:=nfe:ValidarRegrasdeNegocios() cRet:=strTran(cRet,chr(0),"") //Elimina um quadrado "[]" do retrono cRet:=strTran(cRet,chr(32),"") //Elimina um quadrado "[]" do retrono if ! empty(cRet) alert(cRet) nfe:Destroy() RETURN .F. endif ** Assina NFe que está carregada pelo NFE_CarregarINI nfe:Assinar() ** Validar XML assinado na pasta correta nfe:Validar() ** Grava XML assinado na pasta correta nfe:GravarXml(0,xXml,xLocalXml) ** Enviar XML par ao SEFAZ nfe:Enviar(0,.T.,.T.,.F.) else ** Se o XML já está autorizado apenas o carrga ** Para poder imprimir e enviar por e-mail nfe:CarregarXML(xLocalXml+xXml) endif nfe:ImprimirPDF() FileCopy(pDisco+":\xHB\nfe\"+UPPER(pUnidadeUf)+"\PDF\"+xPdf,xLocalPdf+xPdf) mVar:=ACBR_EMAIL(xChaveNfe) xPara:=mVar[1] xCopias:=mVar[2] xAssunto:=mVar[3] xMensagem:=mVar[4] nfe:EnviarEmail(xPara, xLocalXml+xXml,.T.,xAssunto,xMensagem,xCopias) nfe:Destroy() RETURN .T.
  5. @Rafael Dias, estou tentando adaptar o PRG do demo em meu programa para ver se corrigi o erro. Sabe me dizer onde consigo o .ch #include '..\Comum\acbrlib.ch'
  6. @Rafael Dias, eu sempre consulto a chave antes de emitir a nfe, reparei que no log, a consulta da segunda Nfe emitida retorna SetRetorno(-10, Access violation), os métodos de validar, assinar, enviar que são chamados em seguida retorna 0, mas ao finalizar a lib o programa se fecha. Seria a segunda NFE nesta estrutura que dá o erro: nRetMet:=DLLCALL(pDllNfe,32,"NFE_Inicializar",pUnidadeUf+"_NFE.INI","") //Retorno 0 cRet:=space(1024) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Consultar",xChaveNfe,.T.,cRet) //Retorno 0 //Na segunda NFE retorna -10 Access violation nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") //Retorno 0 Log: ACBrLibNFE-20201221.log
  7. Bom dia a todos! Estou migrando minha emissão de NFe do AcbrMonitorPlus para AcbrNfeLib, tudo está funcionando perfeitamente com a LIB, o único problema que tenho atualmente é do programa fechar esporadicamente. As vezes fecha logo na primeira emissão de nfe, as vezes fecha na segunda ou terceira NFe. Meu programa é em xHarbour, e optei em carregar a DLL sempre quando vou utiliza-la e em seguida descarrego, mas já tentei carregar ela na abertura do programa e descarregar no fechamento do programa, assim como os métodos NFE_Inicializar e NFE_Finalizar, também tentei trocar DllLoad() por LoadLibrary(), LibLoad() e DllPrepareCall(), e a DllUnLoad() por LibFree() e FreeLibrary(). Tentei utilizar a dll Cdecl e também a StdCall. Já fiz todas as combinações possíveis. Creio que essa ajuda é para xHarbour e não para a lib, pois no log da lib todos os métodos são executados. Agradeço a todos desde já. FUNCTION ACBR_CRIA_ASSINA_VALIDA_ENVIA(xTxt,xChaveNfe) LOCAL nRetMet,cRet,xLocalXml,xXml,lAssinaValidaEnvia:=.T. LOCAL xPara,xCopias,xAssunto,xMensagem LOCAL pDllNfe:=DllLoad("ACBrNFe32.dll") ** Nome do XML e local de onde será salvo xXml:=xChaveNfe+"-nfe.xml" xLocalXml:=pDisco+":\xHB\nfe\"+UPPER(pUnidadeUf)+"\XML\" xPdf:=xChaveNfe+"-nfe.pdf" xLocalPdf:=pDisco+":\xHB\nfe\"+UPPER(pUnidadeUf)+"\PDF\" nRetMet:=DLLCALL(pDllNfe,32,"NFE_Inicializar",pUnidadeUf+"_NFE.INI","") //Retorno 0 cRet:=space(1024) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Consultar",xChaveNfe,.T.,cRet) //Retorno 0 nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") //Retorno 0 nRetMet:=DLLCALL(pDllNfe,32,"NFE_Inicializar",pUnidadeUf+"_NFE.INI","") //Retorno 0 if at("Autorizado o uso da NF-e",cRet)>0 lAssinaValidaEnvia:=.F. ** Pega a data correta em que a Nfe foi emitida q:="select concat(year(b09demi),lpad(month(b09demi),2,'0')) as pasta from nfec where chavenfe='"+xChaveNfe+"'" v:=F_GETCON(q) xPastaAno:=v[1,1] xLocalXml:=xLocalXml+xPastaAno+"\" xLocalPdf:=xLocalPdf+xPastaAno+"\" else xLocalXml:=xLocalXml+strZero(year(date_sql()),4)+strZero(month(date_sql()),2)+"\" xLocalPdf:=xLocalPdf+strZero(year(date_sql()),4)+strZero(month(date_sql()),2)+"\" endif if lAssinaValidaEnvia nRetMet:=DLLCALL(pDllNfe,32,"NFE_CarregarINI",xTxt) //Retorno 0 nRetMet:=DLLCALL(pDllNfe,32,"NFE_Assinar") //Retorno 0 nRetMet:=DLLCALL(pDllNfe,32,"NFE_Validar") //Retorno 0 nRetMet:=DLLCALL(pDllNfe,32,"NFE_GravarXml",0,xXml,xLocalXml) //Retorno 0 cRet:=space(1024) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Enviar",0,.T.,.T.,.F.,cRet) //Retorno 0 else ** Se o XML já está autorizado apenas o carrga ** Para poder imprimir e enviar por e-mail nRetMet:=DLLCALL(pDllNfe,32,"NFE_CarregarXML",xLocalXml+xXml,"") //Retorno 0 endif nRetMet:=DLLCALL(pDllNfe,32,"NFE_ImprimirPDF") //Retorno 0 nRetMet:=DLLCALL(pDllNfe,32,"NFE_EnviarEmail",xPara,xLocalXml+xXml,.T.,xAssunto,xCopias,,xMensagem) //Retorno 0 nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") //Retorno 0 DllUnload(pDllNfe) RETURN .T.
  8. @Rafael Dias, consegui resolver esse erro aumentando o cRet, de space(256) para space(1024). Antes de emitir uma NFe eu faço uma consulta com a chave, nRet:=DLLCALL(pDllNfe,32,"NFE_Consultar",xChaveNfe,.T.,cRet) Se achar a expressão "Autorizado o uso da NF-e" eu apenas carrego o xml e utilizo o método de enviar e-mail e imprimir, senão, assina, valida, envia. Com o cRet:=space(256) o retorno era -2 com o cRet:=space(1024) o retorno é 0 e não dá erro no método NFe_Finalizar. Agora estou enfrentando um outro problema, esporadicamente o meu programa fecha sem mensagens de erros, em sem muitas pistas no log, pois ele chega a rodar o método NFE_Finalizar certinho e em seguida fecha o programa. Uso pDllNfe:=DllLoad("ACBrNFe32.dll") para carregar a DLL e DllUnload(pDllNfe) para descarregar a DLL. Estou usando a dll da pasta Cdecl, mas já tentei mudar para a StdCall também. Se acharem melhor eu encerro esse tópico e abro outro com esse novo problema.
  9. Obrigado @Juliomar Marchetti e @Rafael Dias Eu estou usando as dll's ACBrLibNFe-0.4.6.110 Vou postar o código fonte que utilizo. FUNCTION ACBR_CRIA_ASSINA_VALIDA_ENVIA(xTxt,xChaveNfe) LOCAL nRetMet,cRet,xLocalXml,xXml,lAssinaValidaEnvia:=.T. LOCAL xPara,xCopias,xAssunto,xMensagem LOCAL pDllNfe:=DllLoad("ACBrNFe32.dll") ** Nome do XML e local de onde será salvo xXml:=xChaveNfe+"-nfe.xml" xLocalXml:=pDisco+":\xHB\nfe\"+UPPER(pUnidadeUf)+"\XML\" xPdf:=xChaveNfe+"-nfe.pdf" xLocalPdf:=pDisco+":\xHB\nfe\"+UPPER(pUnidadeUf)+"\PDF\" ** Iniciar arquivo de configurações do ACBR nRetMet:=DLLCALL(pDllNfe,32,"NFE_Inicializar",pUnidadeUf+"_NFE.INI","") if nRetMet<0 alert("Erro ao iniciar o arquivo de configuracao;"+pUnidadeUf+"_NFE.INI") nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif ** Consulta a chave para saber se já é uma NFe Autorizada para uso cRet:=space(256) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Consultar",xChaveNfe,.T.,cRet) if at("Consumo Indevido",cRet)>0 alert("Consumo Indevido;;Aguarde alguns minutos e tente novamente") nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif if at("Autorizado o uso da NF-e",cRet)>0 lAssinaValidaEnvia:=.F. ** Pega a data correta em que a Nfe foi emitida q:="select concat(year(b09demi),lpad(month(b09demi),2,'0')) as pasta from nfec where chavenfe='"+xChaveNfe+"'" v:=F_GETCON(q) if len(v)==0 alert("Erro ao localizar a chave no Nfec;"+xChaveNfe) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif xPastaAno:=v[1,1] xLocalXml:=xLocalXml+xPastaAno+"\" xLocalPdf:=xLocalPdf+xPastaAno+"\" ** Verifica se o arquivo XML existe na pasta if ! FILE(xLocalXml+xXml) ** Para garantir cria a pasta do anomes do XML e PDF FT_MKDIR(xLocalXml) FT_MKDIR(xLocalPdf) alert("NFe autorizada, porem arquivo xml nao localizado na pasta:;"+xLocalXml+xXml+";Faca o download pelo site do SEFAZ e coloque na pasta indicada") nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif else xLocalXml:=xLocalXml+strZero(year(date_sql()),4)+strZero(month(date_sql()),2)+"\" xLocalPdf:=xLocalPdf+strZero(year(date_sql()),4)+strZero(month(date_sql()),2)+"\" endif ** Para garantir cria a pasta do anomes do XML e PDF FT_MKDIR(xLocalXml) FT_MKDIR(xLocalPdf) if lAssinaValidaEnvia ** Carrega o arquivo TXT da NFe nRetMet:=DLLCALL(pDllNfe,32,"NFE_CarregarINI",xTxt) if nRetMet<0 alert("Erro ao carregar o arquivo txt da NFe;"+xTxt) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif ** Valida regras de negócio da NFe cRet:=space(256) nRetMet:=DLLCALL(pDllNfe,32,"NFE_ValidarRegrasdeNegocios",cRet) cRet:=strTran(cRet,chr(0),"") //Elimina um quadrado "[]" do retrono cRet:=strTran(cRet,chr(32),"") //Elimina um quadrado "[]" do retrono if ! empty(cRet) alert(cRet) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif ** Assina NFe que está carregada pelo NFE_CarregarINI nRetMet:=DLLCALL(pDllNfe,32,"NFE_Assinar") if nRetMet<0 alert("Erro Assinar a NFe;"+xTxt) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif ** Validar XML assinado na pasta correta nRetMet:=DLLCALL(pDllNfe,32,"NFE_Validar") if nRetMet<0 alert("Erro Validar a NFe;"+xXml) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif ** Grava XML assinado na pasta correta nRetMet:=DLLCALL(pDllNfe,32,"NFE_GravarXml",0,xXml,xLocalXml) if nRetMet<0 alert("Erro GravarXml da NFe;"+xTxt) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif ** Enviar XML par ao SEFAZ cRet:=space(256) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Enviar",0,.T.,.T.,.F.,cRet) if nRetMet<0 alert("Erro Enviar a NFe para o SEFAZ;"+xXml) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) RETURN .F. endif else ** Se o XML já está autorizado apenas o carrga ** Para poder imprimir e enviar por e-mail nRetMet:=DLLCALL(pDllNfe,32,"NFE_CarregarXML",xLocalXml+xXml,"") endif nRetMet:=DLLCALL(pDllNfe,32,"NFE_ImprimirPDF") if nRetMet<0 alert("Erro Imprimir NFe;"+xXml) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) else FileCopy(pDisco+":\xHB\nfe\"+UPPER(pUnidadeUf)+"\PDF\"+xPdf,xLocalPdf+xPdf) endif mVar:=ACBR_EMAIL(xChaveNfe) xPara:=mVar[1] xCopias:=mVar[2] xAssunto:=mVar[3] xMensagem:=mVar[4] nRetMet:=DLLCALL(pDllNfe,32,"NFE_EnviarEmail",xPara,xLocalXml+xXml,.T.,xAssunto,xCopias,,xMensagem) if nRetMet<0 alert("Erro Enviar a E-mail para os contatos;"+xPara+";"+xCopias) nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") DllUnload(pDllNfe) endif nRetMet:=DLLCALL(pDllNfe,32,"NFE_Finalizar",pUnidadeUf+"_NFE.INI","") if nRetMet<0 alert("Erro ao Finalizar o arquivo de configuracao;"+pUnidadeUf+"_NFE.INI") DllUnload(pDllNfe) RETURN .F. endif DllUnload(pDllNfe) RETURN .T.
  10. Boa noite @Juliomar Marchetti Estou usando a lib com xHarbour. Carrego a dll com o DllLoad -> DllNfe:=DllLoad("ACBrNFe32.dll") Executo os métodos com DLLCALL -> DLLCALL(DllNfe,32,"NFE_Inicializar","SP_NFE.INI","") Descarrego a DLL com DllUnload -> DllUnload(DllNfe)
  11. Bom dia amigos! Estou com um problema para utilizar o método NFE_Finalizar, apenas quando meu programa utiliza o método NFE_EnviarEmail antes do NFE_Finalizar em uma nfe já autorizada. Vou colocar em negrito o por onde o programa passa quando dá o erro. Vou colocar um trecho simplificado do meu programa: Tenho uma função que ACBR_CRIA_ASSINA_VALIDA_ENVIA(xChaveNfe), primeira coisa que faço e consultar a chave, para ver se é uma Nfe já autorizada, se for obtenho o caminho do xml para carrega-lo, caso contrário carrego o .INI e assino, valido etc. NFE_Inicializar if cRet:="Autorizado o uso da NF-e" NFE_CarregarXML else NFE_CarregarINI NFE_ValidarRegrasdeNegocios NFE_Assinar NFE_Validar NFE_GravarXml NFE_Enviar endif NFE_ImprimirPDF NFE_EnviarEmail //Se comentar a chamada deste método, não dá erro no NFE_Finalizar NFE_Finalizar //SetRetorno(-2, Access violation) Nfe Nova : NFe Nova.log sem erros, entra no else Nfe já autorizada: NFe Autorizada.log com erro, entra no if Agradeço desde já a ajuda de todos.
  12. @Kiko Fernandes, era isso mesmo! Coloquei as libxml*.dll na pasta e funcionou tudo certinho! Obrigado a todos pela ajuda, bom natal e feliz ano novo a todos!
  13. Na sequencia: NFE_Inicializar NFE_CarregarINI NFE_Assinar NFE_GravarXML O erro também é no método NFE_Assinar Log: ACBrLibNFE-20201211.log Esse é o arquivo .INI para gerar a NFe, é o mesmo que uso no acbrmonitorplus. INI da NFe: NFE143130.TXT
  14. @Kiko Fernandes, fiz o teste com o SSLCrypLib=1 e continua sem conseguir assinar. Coloquei para o log ser feito pelo nível 4, e pelo log diz que ao assinar dá o erro: "Erro ao inicializar a Biblioteca LibXML2" Segue log ACBrLibNFE-20201211.log
  15. @Kiko Fernandes, eu já tentei fazer esta troca e também não deu certo, o erro persiste no NFE_Assinar @antonio.carlos, vou testar o demo.
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.