Sistema Se Fecha Sozinho
27/03/2006
0
Não dá nenhuma mensagem de erro, nada. Simplesmente, sem nenhuma solicitação do usuário, o programa se encerra.
Não é em todo computador que isso acontece. Já estou há uma semana pesquisando o que poderia ser, mas não encontrei nenhuma luz.
O foi possível notar até o momento é que, quando se abre alguma página na internet é que o problema ocorre mais.
Alguém tem qualquer idéia do que pode estar causando isso? Não sei o momento que ocorre e em meu computador não acontece. Por isso nem debugar consigo.
Uso Delphi 7, Firebird 1.5.3.0487 e DBExpress.
Obrigado
Armindo
Posts
27/03/2006
Paulocesar1301
Por um acaso seu sistema utiliza alguma dll tb utilizada pelo explorer ou pelo rwuindows ? Tentou rodar linha a linha ? às vezes qdo o problema é cabeludo... o melhor é ir por eliminação :wink:
Abs e Bons Códigos :wink:
27/03/2006
Armindo
Obrigado pela resposta, mas, como mencionei, o problema é que não consigo reproduzir o problema em minha máquina. A situação só ocorre em máquinas de usuários e as quais não tenho acesso. Por isso a diculdade de debugar.
27/03/2006
Bico
Tive problemas semelhates a este.
Quando o usuário tentava acessar algumas telas do sistema no Windows 98 o sistema simplesmente fechava e não exibia nenhuma mensagem.
Depois de muito pesquisar descobri que o que estava causando este erro era uma ComboBox que tinha um item em branco.
No Windows XP o problema não acontecia, o erro só ocorria no Windows 98.
Identifique em que situação o sistema fecha sozinho. Caso sempre ocorra o erro ao tentar acessar determinadas telas, vale a pena dar uma conferida nestas telas.
Atenciosamente,
Fernando.
28/03/2006
Armindo
Testei o em várias máquinas e cheguei a conclusão que isso está ocorrendo por que o programa consome excessivamente a memória do computador.
Há alguma maneira de eu verificar o que (componentes, rotinas, etc) em meu programa está(ão) causando isso?
Por exemplo, seu eu executar chamar a calculadora do Windos ´ShellExecute(Handle,´Open´,´Calc.exe´,nil,´´,sw_shownormal)´ o sistema fecha.
Outra situação: o programa está aberto, rodando normal. Quando o se abre uma página na internet, ele fecha sozinho, sem nenhuma msg de erro, nada.
Isso só ocorre em máquinas com pouca capacidade. O problema não é a rotina que chama a calculadora. É outra coisa que está sobrecarregando o sistema. O chamamento da calculadora do Windows é só a ponta do problema.
Alguém pode me ajudar?
28/03/2006
Carlos_simioni
ainda não consegui identificar, mas eu já reparei que isso ocorre nos meus micros que acessam o site do bradesco.
o bradesco registra uma DLL junto ao IE. e quando acessa o site deles essa dll carrega e chega a fechar meus programas. ainda não encontrei solução. a unica ate agora foi que quando meu executavel tem a data de criação mais nova que a do bradesco o meu sistema roda sem fechar.
28/03/2006
Armindo
Meu programa fecha quando se entra numa página da internet. Fecha sem nenhum mensange, nada. No OnClose do main form há rotinas que sequer são executadas. É como seu o programa fosse fechado no CTRL+ALT+DEL.
Será que ninguém tem uma mínima idéia do que pode estar causando isso?
28/03/2006
Paulocesar1301
Se sim tente chamá-la dinamicamente... no meu caso quado tive problemas parecidos resolveu
29/03/2006
Armindo
Desculpe a ignorância, mas ´boiei´. O que quer dizer declarar uma dll estatica e dinamicamente?
Obrigado.
29/03/2006
Paulocesar1301
function LoginRede: WideString; stdcall; external ´MonDLL.dll´;
Dinâmica: lê a dll usando LoadLibrary e FreeLibrary:
type TCallMeDll = function ou procedure<declaração exata após o nome> stdcall; var CallMeDll: TCallMeDll; FuncPtr: TFarProc; hDll: THandle; result: <tipo de retorno>; begin hDll := LoadLibrary(´<nome da dll>´); FuncPtr := GetProcAddress(hDLL, ´<nome da função (a função deve ser declarada na seção Exports da DLL com a opção Name ´Nome da Função´)>´); @CallMeDll := FuncPtr; if @CallMeDll <> nil then result := CallMeDll(<argumentos necessários para a função>); FuncPtr := nil; FreeLibrary(hDll); end;
29/03/2006
Armindo
Apesar do meu problema continuar, o tópico já serviu para algo, pois aprendi algo.
Descobri mais uma coisa sobre o meu problema. Não é a memória RAM que é esgotada. O problema parece estar relacionado com o processador, pois acontece com máquina com 256 e 512 KB de RAM.
04/10/2007
Rodc
Estou tendo este problema com um cliente. Através de testes consegui descobrir que o problema está ao usar a função ShellExecute, ou para abrir uma pagina da internet ou para chamar a calculadora ou para abrir outro programa meu.
O problema persiste por uma semana e eu já não sei mais o que fazer.
Armindo, você conseguiu resolver o problema do seu cliente?
Alguém mais teve este problema?
06/11/2007
Emafra
06/11/2007
Rodc
Passei a usar WinExec() onde foi possível. Com WinExec o erro não acontece.
19/12/2023
Gabriel
Não dá nenhuma mensagem de erro, nada. Simplesmente, sem nenhuma solicitação do usuário, o programa se encerra.
Não é em todo computador que isso acontece. Já estou há uma semana pesquisando o que poderia ser, mas não encontrei nenhuma luz.
O foi possível notar até o momento é que, quando se abre alguma página na internet é que o problema ocorre mais.
Alguém tem qualquer idéia do que pode estar causando isso? Não sei o momento que ocorre e em meu computador não acontece. Por isso nem debugar consigo.
Uso Delphi 7, Firebird 1.5.3.0487 e DBExpress.
Obrigado
Bom dia, estava acontecendo o mesmo comigo.
Abri o Event view e vi que o motivo de estar fechando o delphi foi o arquivo Castalia220.bpl .
A resolução que encontrei foi tirar o arquivo da pasta que se encontrava, abri o delphi novamente e reniciei o computador.
Após isso voltei o arquivo para a pasta e voltou a funcionar normalmente.
21/12/2023
P3rm4tr1p
Não dá nenhuma mensagem de erro, nada. Simplesmente, sem nenhuma solicitação do usuário, o programa se encerra.
Não é em todo computador que isso acontece. Já estou há uma semana pesquisando o que poderia ser, mas não encontrei nenhuma luz.
O foi possível notar até o momento é que, quando se abre alguma página na internet é que o problema ocorre mais.
Alguém tem qualquer idéia do que pode estar causando isso? Não sei o momento que ocorre e em meu computador não acontece. Por isso nem debugar consigo.
Uso Delphi 7, Firebird 1.5.3.0487 e DBExpress.
Obrigado
Dá uma olhada nos logs do sistema, tipo, se tem alguma mensagem esquisita quando o app fecha.
Se liga em depurar o app onde tá dando esse problema mais vezes. Vê se rola em outro lugar além do seu PC.
Quando abre páginas na internet, fica de olho nos recursos, pode ser que algo esteja sugando tudo e derrubando o app.
Confere se o Firebird, DBExpress e Delphi 7 tão todos na mesma vibe, tipo, compatíveis e tal. Às vezes, uma atualização resolve.
Joga uns "try...except" no código pra pegar erros e ver se tem algo escapando.
Se tiver usando componentes de terceiros, vê se tão atualizados e na mesma vibe com o sistema.
Dá uma revisada geral no código, pra ver se não tem algo maluco tipo vazamento de memória ou coisa assim.
Pensa em colocar uns logs no código pra rastrear o momento exato do problema.
Talvez seja hora de dar um update no Delphi e nos componentes, pra ficar tudo na última moda.
Clique aqui para fazer login e interagir na Comunidade :)