Jump to content

Acbrmail Erro E Aplicação Presa


joaoelson
Go to solution Solved by joaoelson,
  • Este tópico foi criado há 2152 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

olá amigos.

 

Estou em dúvidas com uma situação. Migrei o envio de email para o ACBrMail. 

Consegui fazer enviar e-mail, está tudo ok, porém, quando dá um erro por algum motivo, seja lá no servidor smtp e etc, mesmo que eu feche a aplicação, a mesma fica presa em memória. Somente consigo encerrar totalmente pelo gerenciador de tarefas do windows. 

Já coloquei antes do comando que encerra a aplicação, o comando para eliminar o componente, mas nada resolveu:

FreeAndNil(DM.ACBrMail1);
Application.Terminate;

A aplicação fecha, mas continua presa em memória e só consigo encerrar totalmente pelo gerenciador de tarefas, Alguma dica para isso?

Só acontece com o ACBrMail.

 

 

 

Link to comment
Share on other sites

  • Fundadores

Há um TimeOut definido no sistema operacional, para erros Socket...

 

A aplicação não é encerrada mesmo depois de um Tempo ?

 

Consegue reproduzir os problemas nos demos do ACBrMail ?

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link to comment
Share on other sites

  • Consultores

Você está utilizando o envio de e-mail por Thread?

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link to comment
Share on other sites

Olá amigos.

 

Desculpa a demora para responder, desde já agradeço a ajuda.

Modifiquei algumas linhas na finalização do meu aplicativo. Analisando pausadamente a compilação do aplicativo, verifiquei algumas situações. 

A aplicação não está mais ficando presa permanentemente, agora, está demorando muito para encerrar totalmente.

Estudando o caso, verifiquei o que está causando lentidão ao destruir o componente. Dentro de "destructor TACBrMail.Destroy", tem o comando "Clear;". Dentro de "Clear;" ao chegar na linha "fSMTP.Reset;", está demorando muito para passar. A function TSMTPSend.Reset está levando 1 minuto contado para retornar. 

Percebi que esse problema só ocorre, quando anteriormente no envio pelo ACBrMail, o erro foi de SMTP. 

 

Respondendo a pergunta do amigo Daniel, No demo do ACBrMail, não ocorre esse erro, tentei reproduzir mas não ocorreu.   

A forma que utilizo para enviar e-mail é praticamente a cópia do demo do acbr, amigo EMBarbosa. 

 

Alguma sugestão caros amigos?

Edited by joaoelson
Link to comment
Share on other sites

  • Solution

Amigos.

 

Depois de analisar alguns pontos, resolvi o problema.

Esse problema só ocorre quando a propriedade Host do componente ACBrMail estiver: em branco ou for um endereço ou IP inválido. A aplicação demorará 60 segundos para encerrar totalmente. Consegui reproduzir o problema com o demo do ACBrMail.

Um dos meus clientes me passou o endereço do seu servidor de e-mail errado, por isso estava ocorrendo o erro, só consegui resolver hoje, depois de entrar em contato com o serviço de hospedagem. 

Para maiores esclarecimentos, leia o post acima.

 

 

Obrigado.

João elson

  • Like 2
Link to comment
Share on other sites

  • Consultores

Muito obrigado pelo retorno João. Tenho certeza que poderá ajudar outros.

A propósito, você pode marcar seu tópico como resolvido clicando no botão "Resolvido" que fica logo abaixo do post no qual você está a solução.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link to comment
Share on other sites

  • Fundadores

2.2 - Permaneça no assunto - Quando tiver uma dúvida diferente do assunto no tópico, poste em novo tópico. Não use algo equivalente a "aproveitando o gancho... [dúvida não relacionada com o tópico aqui]".

  • Like 1
Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link to comment
Share on other sites

  • 1 year later...
Em 14/01/2015 at 12:43, Daniel Simoes disse:

2.2 - Permaneça no assunto - Quando tiver uma dúvida diferente do assunto no tópico, poste em novo tópico. Não use algo equivalente a "aproveitando o gancho... [dúvida não relacionada com o tópico aqui]".

 

Prezados,


Ao enviar um email a propriedade Reset trava em torno de 1 minuto. Em resumo trava o envio de email. 

É possível criar uma variável do tipo boolean no método Clear? Informado se deseja utilizar a propriedade Reset. Caso a variável seja false a propriedade Reset não é chamada. Dessa forma o envio de email não trava. 
Ex.:

O Default é true.

procedure TACBrMail.Clear(Reset: Boolean);
begin
  ClearAttachments;
  if Reset then
    fSMTP.Reset;
  Etc...  
end;

 

 

 

 

Link to comment
Share on other sites

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.