Tratamento de erro
30/09/2004
0
Pessoal, estou com um problema no uso do Try Except. Estou usando os componentes Indy TIdSMTP e TIdMessage para enviar emails. Está funcionando OK, até acontecer uma excessão tal como falta de conexão com a internet, ou problemas em minha rede (o que resulta no mesmo). Envio o email da seguinte maneira:
Onde: ´MENSAGEM´ é o componente TIdMessage com todos os parâmetros já definidos.
[b:4b58c4cba1]Minha pergunta é[/b:4b58c4cba1]: Como evitar que o programa trave em caso de algum problema impedir que o envio do email seja bem sucedido, tal como falta de internet?
Tudo funciona perfeitamente. O problema mesmo é o Try Except que não trata o erro.
Da forma como eu fiz no código acima, o Try não está tratando a excessão (não tenho a menor idéia porque) e o programa trava se o computador não estiver conectado. Alguém tem alguma sugestão de rotina que evite que o programa trave em caso de não ser possível enviar o e-mail?
Valeu!
wbb
Try SMTP.Connect(30); SMTP.Send(MENSAGEM); SMTP.Disconnect; Except ..... ............ ........ End;
Onde: ´MENSAGEM´ é o componente TIdMessage com todos os parâmetros já definidos.
[b:4b58c4cba1]Minha pergunta é[/b:4b58c4cba1]: Como evitar que o programa trave em caso de algum problema impedir que o envio do email seja bem sucedido, tal como falta de internet?
Tudo funciona perfeitamente. O problema mesmo é o Try Except que não trata o erro.
Da forma como eu fiz no código acima, o Try não está tratando a excessão (não tenho a menor idéia porque) e o programa trava se o computador não estiver conectado. Alguém tem alguma sugestão de rotina que evite que o programa trave em caso de não ser possível enviar o e-mail?
Valeu!
wbb
Wbb
Curtir tópico
+ 0
Responder
Posts
30/09/2004
Osocram
o SMTP deve ter um evendo d timeout ou alto assim...
acho q o seu prob non eh um erro e sim um timeout enton non eh pego pelo try Except.
acho q o seu prob non eh um erro e sim um timeout enton non eh pego pelo try Except.
Responder
04/10/2004
Osocram
Wbb
Como eu t disse eu mexi num prog assim a mto tempo....
Acho q vc pode verificar ou aumentar o timeout dele...
assim ele fica tentando mandar por mais tempo...
ex: se o timeout = 10 enton ele vai tentar por 10segundos
dae vc aumenta p 30s por ex.
Como eu t disse eu mexi num prog assim a mto tempo....
Acho q vc pode verificar ou aumentar o timeout dele...
assim ele fica tentando mandar por mais tempo...
ex: se o timeout = 10 enton ele vai tentar por 10segundos
dae vc aumenta p 30s por ex.
Responder
Clique aqui para fazer login e interagir na Comunidade :)