MULLER 0 Posted January 25 Report Share Posted January 25 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 to post Share on other sites
Juliomar Marchetti 3,862 Posted January 25 Report Share Posted January 25 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? Juliomar Marchetti Ajude o Projeto ACBr crescer - Assine o SAC skype: juliomar telegram: juliomar http://www.juliomarmarchetti.com.br Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Link to post Share on other sites
MULLER 0 Posted January 25 Author Report Share Posted January 25 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 to post Share on other sites
José M. S. Junior 3,058 Posted January 25 Report Share Posted January 25 Como se trata de uso da lib ACBrBoleto estamos movendo o tópico para a Categoria adequada. José Junior Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Link to post Share on other sites
Solution Rafael Dias 1,216 Posted January 26 Solution Report Share Posted January 26 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. Rafael Dias Ajude o Projeto ACBr crescer - Assine o SAC Desenvolvedor ACBrLib. Link to post Share on other sites
Recommended Posts