Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 4798 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Estou tentando executar o método PafMF_LMFC_Cotepe1704 mas ocorre um access violation no módulo ntdll.dll.

Fiz vários testes, verifiquei se estava usando os arquivos e dll's corretas, mas o erro persiste.

Estou usando uma impressora URANO e configurado no ACBr com FiscNet que é o protocolo de comunicação que ela usa. Meu projeto é em Delphi 2010 e estou usando Windows 7.

Acredito que possa ser alguma incompatibilidade do Delphi 2010 na execução/chamada da função xDLLReadLeMemorias que o TACBrECFFiscNET chama da DLL Leitura.dll

Alguém implementou esta rotina usando FiscNet no Delphi 2010?

Postado

As funções externas estavam passando parâmetros como PAnsiChar, alterei para AnsiString e funcionou corretamente:

xDLLReadLeMemorias : function (szPortaSerial, szNomeArquivo, szSerieECF, bAguardaConcluirLeitura : AnsiString) : Integer; stdcall;


xDLLATO17GeraArquivo : function (szArquivoBinario, szArquivoTexto, szPeriodoIni, szPeriodoFIM, TipoPeriodo, szUsuario, szTipoLeitura : AnsiString) : Integer; stdcall;
E nas chamadas das funções eu retirei o Cast do PAnsiChar:
//Comentado pois gera Access violation no modulo ntdll.dll

//iRet := xDLLReadLeMemorias( PAnsiChar(PortaSerial), PAnsiChar(ArqTmp), PAnsiChar(NumFab), '1');


iRet := xDLLReadLeMemorias( PortaSerial, ArqTmp, NumFab, '1');

Postado

A propósito, se alguém da ACBr puder mudar isso nos fontes do ACBr seria uma boa pra não perder essa funcionalidade nas proximas atualizações.

Obrigado!

  • 3 semanas depois ...
  • Este tópico foi criado há 4798 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.