Ir para conteúdo
  • Cadastre-se

dev botao

Como desativar a Classe ACBrBoletos da Memoria


MULLER
Ver Solução Respondido por Rafael Dias,
  • Este tópico foi criado há 1157 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Assim esta funcionando corretamente eu monto os boletos e faço a impressão, mas quando volto no processo para emitir outros boletos faz tudo mas da erro no metodo Boleto:Imprimir(), esta me parecendo que nao estou "destruindo" a instancia da classe ou coisa assim, pois se sair do sistema e acessar novamente dai faz os boletos corretamente.

Como posso proceder? talvez usar o metodo DESTRUCTOR que no meu entender tem o parâmetro Destroy!

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Na verdade precisamos saber como está fazendo?

Tu fica criando tudo em runtime? cuidado ao usar DataModules pois ele é singleton

lembrou de limpar os titulos antes de começar tudo? eo  componente de geração do pdf e impressão tu desassocia e associa toda vez se faz em runtime?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

Observando a Rotina:

PROCEDURE Destroy CLASS ACBrBoleto
    DllCall(::hHandle, DLL_OSAPI, "Boleto_Finalizar")
    DllUnload(::hHandle)
RETURN

Eu alterei para esta:

PROCEDURE Destroy CLASS ACBrBoleto
    hResult := DllCall(::hHandle, DLL_OSAPI, "Boleto_Finalizar")
    DllUnload(hResult)
RETURN

Esta alteração feita no fonte ACBrBoleto.prg que esta nos : \\Demo\Harbour\Boleto

Dessa forma passou a funcionar a instrução:

oBoleto := Nil

Sempre que puder ajudar estamos a diposição.

Skype:  clairtomuller

 

Link para o comentário
Compartilhar em outros sites

  • Solution

Este é um erro do LCL do lazarus não tem como corrigir, para evitar ele basta iniciar uma instancia da lib e deixar ela sempre na memoria, não precisa usar esta instancia basta deixar ela na memoria que o LCL para de dar erro.

E a sua modificação esta incorreta como tu vai descarregar a Handle da dll passando o resultado do processo, ali tu tem que passar o handle mesmo.

 

Link para o comentário
Compartilhar em outros sites

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