SISTEMA EM VB6 FECHANDO MISTERIOSAMENTE

LCSD 08/02/2011 14:50:19
#364707
Pessoal, muito boa tarde..... Sei que estou bastante sumido, mas o tempo por aquí anda muito escasso tbem para vir aquí e aparecer de vez em quando....

Bom galerinha, é o seguinte:
Tenho uma aplicação feito 100% por mim, ao qual ela faz a leitura biométrica, identifica a pessoa e só aí, depois, libera a catraca para a pessoa entrar ou não a academia.
O Sistema está rodando 90% OK, com poucos problemas ainda para serem solucionados, aonde aos pouco estou resolvendo, já que nem tempo para testar eu tive e o meu teste está sendo feito em ambiente de produção mesmo nas unidades da academia.
Só que, tem um [Ô]pau gosado[Ô] que está dando, que eu de forma alguma conseguí capturar aonde é que ele esteja.

Em um determinado momento (o sistema pode estar em uso, ou estar parado aguardando a leitura digital), o sistema simplesmente se FECHA [Ô]do nada[Ô].
Para fazer com que a leitura biométrica funcionasse, eu trabalho com algumas DLL's ao qual adquirí do fabricante, mas o que me deixa surpreso é que não tem uma ação definida para que o sistema se feche.
A única [Ô]dica[Ô] ao qual eu possuo, é que ele se fecha quando o sistema está aberto na tela de reconhecimento das digitais, e é uma tela ao qual ela fica aberta 99% do dia nas academias. Se eu deixar outras telas abertas sem que ela esteja aberta junto, o sistema não se fecha, agora, se ela está aberta sozinha ou junto de outras, o sistema simplesmente fecha sem me dar nenhum tipo de erro.

Tem dias que o sistema fica [Ô]crítico[Ô] e se fecha dezenas de vezes por dia, mas tem dias que o sistema até que está [Ô]bonzinho[Ô], e se fecha somente algumas poucas vezes.

Por acaso, alguém saberia como eu poderia [Ô]depurar[Ô] este executável para conseguir descobrir em qual momento que ele está se fechando?? Se é na chamada de alguma DLL deste fabricante, ou se é algum problema com o meu código que em algum determinado momento não esteja funcionando perfeitamente???


Muito obrigado, e conto com a ajuda de VC's.....
LUIZCOMINO 08/02/2011 15:04:37
#364709
vc já tentou instalar o vb na maquina e executar o sistema como projeto ainda, sem for o executável?,talvez ele de algum erro no projeto naquela maquina que vc ainda não conseguiu debugar,e rodando direto do projeto ele pode dar o erro e vc consiga ver em qual linha está o problema.
abraço!
LCSD 08/02/2011 15:12:49
#364711
Caro LUIZ,

Eu já fiz estes testes até em minha máquina mesmo, debugando e tentando descobrir aonde é que está o problema.
E na minha máquina mesmo, mesmo rodando pelo VB6, ele acontece a mesma coisa, não sendo possível IMAGINAR aonde é que está o problema.

Pois se eu ficar rodando debugando, o sistema irá rodar perfeitamente........... Mas depois de um certo tempo, ele pega e se fecha do nada, sem passar por onde eu IMAGINAVA que pudesse acontecer o problema.

PS: Tenho um objeto TIMER rodando, ao qual eu estou [Ô]ligando e desligando[Ô] os 2 leitores biométricos que tenho ligado no micro, já que, para que os 2 funcionem, preciso ligar um, e deixar o outro desligado, e depois, fazer o inverso. Faço este processo a cada 2 segundos em média, tempo ao qual nem é possível notar o desligamento deles.
Mas isso não é desculpa, pois em uma outra unidade, o sistema possui somente 1 leitor cadastrado, não sendo necessário fazer este [Ô]esquema maluco[Ô], e mesmo assim o sistema se fecha inexplicavelmente.




Eu queria talvez, uma função para colocar no meu FORM PRINCIPAL, aonde que, quando o form for fechado, ele capture o erro que o sistema tenha dado e quarde em um arquivo TXT mesmo. Talvez assim eu consiga imaginar AONDE o erro possa estar acontecendo...... Será que esta função conseguiria capturar tbem erros em outras DLL's????
LLAIA 08/02/2011 15:17:06
#364713
Cara, deve ser o Windows que tá encerrando o seu sistema. Verifique o log do windows em Ferramentas Administrativas.
LUIZCOMINO 08/02/2011 15:27:39
#364714
tente jogar um on error goto ex:

joggue no inicio do formulario um

[Ô]On error Goto Problema[Ô]

quando ele gerar o problema ele grava em um arquivo texto o numero do erro tipo assim:

Problema:
Path =[Ô]caminho do arquivo[Ô]
Open Path For Output As #1
Print Err.Number & [Ô] - [Ô] & Err.Description
close #1
end

tendeu?

JLAUROSOUZA 08/02/2011 15:36:55
#364715
Você utiliza alguem componente de tempo nessa tela?, se utiliza observe se o mesmo naum esta dando PAU, e estou fechando em [Ô]erro[Ô] naum em [Ô]end[Ô].

Espero q a dica ajude!!!
MARCELO.VB.PIRA 08/02/2011 16:12:24
#364719
Resposta escolhida
Olá amigo...

preciso de mais alguns detalhes:

vc usa form MDIchild? o form com a função do leitor é MDIchild?
ta fechando o form onde tem a função do leitor ou fecha o programa inteiro?
o erro ocorre só em EXE ou em modo debug tb? se em modo debug tb der o erro, o vb exibe alguma mensageM

outra coisa:

vamos ter que por algumas linhas em TODAS as sub's e procedures deste form para tentar cercar o erro, ok? além disso você terá que numerar o seu codigo inteiro (pelo menos o form problematico) para a rotina de erro poder localizar o erro, ok?

onde antes era:


Private Sub TxFiltroOSVENDE_DblClick()
OptVen = 96
TipoEsc = 9: EscolheRegistro.Show
Me.Hide
End Sub


va ficar:


Private Sub TxFiltroOSVENDE_DblClick()

10 On Error GoTo TxFiltroOSVENDE_DblClick_Error

20 OptVen = 96
30 TipoEsc = 9: EscolheRegistro.Show
40 Me.Hide

50 On Error GoTo 0
60 Exit Sub

TxFiltroOSVENDE_DblClick_Error:

70 msgbox [Ô]Numero:[Ô] & Err.Number & vbnewline & [Ô]descrição:[Ô] & Err.Description & vbnewline & [Ô]Linha:[Ô] & Erl

End Sub


Desta forma, qualquer erro em qualquer parte do form será tratado e exibido, informando o numero do erro, a linha onde ocorreu e a descrição do erro

o MZTools pode fazer essa alteração para você de forma bem fácil.

Caso não coheça o MZTools, tem um topico ou um artigo (não me lembro mais) onde eu destrinchei essa maravlhosa ferramenta (MZTools)

Caso não achem o meu tópico aqui no vbmania, podem baixar o topico inteiro em:

www.dusistemas.com.br/mztoolls.rar

Espero que desta forma possa ocalizar o pepino...

valeu!!!





MARCELO.VB.PIRA 08/02/2011 16:22:18
#364720
A dica do LLAIA parece ser muito interessante.... acho que merece uma pesquisa...
FOXMAN 08/02/2011 16:31:45
#364723
Rapaz que zica heim ?????
Pior de tudo é ficar dando tiro no escuro, pois qdo trabalhamos com DLLs de terceiros corremos este risco.
Masssss...vamos ao interrogatorio.

Já tentou rodar o sistema sem os HARDWARE para verificar a possibilidade de conflitos ???
Já verificou com o fabricante a possibilidade da DLL estar causando esse erro ????
Já comentou todos os tratementos de erros do formulário de leitura bio de forma a permitir o erro????
Este problema começou de um tempo para cá ou sempre existiu ?????
Qual a versão do SO(windows) em que o problema ocorre ???
Já testou em outras versões ?????

Ao que tudo indica, o erro está no formulário de leitura biométrica. Sugiro (caso não seja muuuito complicado) separar (apenas para teste) o formulario de leitura bio, gerar um novo executavel com apenas esse formulário e inicar a busca pelo possível erro.

Tópico encerrado , respostas não são mais permitidas