Erro ao Fechar

13/02/2006

Galera, quando eu fecho o meu sistema , ele da erro!!!
Mas acontece somente de vez em quando...

O que pode ser, já tentei debugar, mas ele terminar e quando sai da erro...

Me ajudem por favor

Abraços


Tremonti

Respostas

13/02/2006

Titanius

Galera, quando eu fecho o meu sistema , ele da erro!!! Mas acontece somente de vez em quando... O que pode ser, já tentei debugar, mas ele terminar e quando sai da erro... Me ajudem por favor Abraços


Qual tipo de erro, qual erro que dá? Ajuda bastante... :wink:

[]s


Responder Citar

13/02/2006

Tremonti

Quando Saio do sistema a mensagem é exatamente esta:

A instrução no ´0x00424f19´ fez referência à memória no ´0x004dd658´ . A Memória não pôde ser ´written´

Clique em ´OK´ para encerrar o programa
Cliquem em ´Cancelar´ para depurar o programa


Daí quando clico em OK ele me exibe esta aqui:


Exception EAccessViolation in module Monreve.exe at 00024F19.
Access Violation at adress 00424f19 em Modulo ´Monreve.exe´. Write of address 004DD658


Responder Citar

13/02/2006

Aroldo Zanela

Colega,

Tem algum componente de terceiros (ou seu) no formulário?


Responder Citar

14/02/2006

Tremonti

Sim, tenho o VCLSkin...

O QUe pode ser?


Responder Citar

14/02/2006

Paullsoftware

deve ser isso..
a VCLskin tem ums bugs como por exemplo tente trabalhar com TOpenDialog pra ver o que acontece, eu usava eles tb, mais de vez enquando dava esse erro tenta o seguinte: antes de finzlizar a aplicação tenta desativar a skin destruindo ela da memória e depois finaliza o sistema pra ver se resolve o meu resolveu!


Responder Citar

15/02/2006

Tremonti

Entao, cheguei a mudar para active false e true mas nada

Abraços


Responder Citar

16/02/2006

Paullsoftware

Entao, cheguei a mudar para active false e true mas nada Abraços


é um Bug do componente mesmo... eu tenho sistemas com ela que funciona normalmente e tenho sistema que não teve jeito tive que tirar...
[i:bbeeec8076]acho que deve ser alguma incompatibilidade com algum outro componente![/i:bbeeec8076]


Responder Citar

23/02/2006

Tremonti

Vichi, parece que não é isso não.

Tirei o componente e continua me dando erro quando Fecho meu sistema

Pode ser algum objeto na memória? como descobrir?!

Obrigado e Abraços


Responder Citar

24/02/2006

Paullsoftware

o erro não ocorre quando vc tenta fechar a aplicação, vc tem algum código quando está fechando o form?
tente usar os BreakPoints do delphi para ver o que está havendo!
senão ocorre toda hora significa que em algum momento ele faz referencia a um objeto ou variavel que não está na memória, ou já foi destruida!


Responder Citar

24/02/2006

Tremonti

Tenho

CloseQuery
//Tira o Usuário da Lista de Logados
qryUsuaLog.ParamByName(´CdUsua´).Value := glUsuario;
qryUsuaLog.ExecSQL;

Close
SkinData1.Active := False;

if FileExists(´c:\WINNT\System32\timedate1.cpl´) then
RenameFile(´c:\WINNT\System32\timedate1.cpl´, ´C:\WINNT\System32\timedate.cpl´);
{** WIN98 **}
if FileExists(´c:\WINDOWS\System\timedate1.cpl´) then
RenameFile(´c:\WINDOWS\System\timedate1.cpl´, ´C:\WINNT\System32\timedate.cpl´);

//Faz aparecer o Relógio ao Fechar
ShowWindow( FindWindowEx(FindWindowEx( FindWindow(´Shell_TrayWnd´, nil), HWND(0), ´TrayNotifyWnd´, nil), HWND(0), ´TrayClockWClass´, nil), Sw_Show);

Onde pode estar?
De vez em quando ele da um ´Invalid pointer operator´ , alguma coisa assim

Abraços


Responder Citar

25/02/2006

Tremonti

Sobe


Responder Citar

25/02/2006

Aroldo Zanela

Colega,

Comente o código e verifique se o erro desaparece.


Responder Citar

26/03/2006

Tremonti

Nao desapareceu!!
e agora?!


Responder Citar

27/03/2006

Isaiasbass

Olá pessoal

esse prob tb é bem antigo comigo.
Comigo só acontece com aplicações grandes q tenham mais de um DataModule.
Uso Delphi + FB com IBQuerys e IBUpdates

Uso MadException q é aquel componente q trata o erro , diz extamente a linha do erro e pode mandar e e-mail com erro e outros detalhes.

Apenas com o madExcept foi q tive uma luz, o erro possivelmente estava num bug na Destruição do IBUpdate...sempre me trazia essa mensagem....fui nos fontes do IBExpress e alterei ou comentei algumas coisas na funcao destroy do IBUpdate....resolveu temporariamente mas poucos dias depois voltou o ´fantasma´.

No meu ponto de vista (de acordo com o scrip sequencial do madExcept) parece ser q na finalização do sistema o IBUpdate se destroy antes do comando de destruição do proprio datamodule , qndo o datamodule vai se destrui ele mesmo tb tenta destruir o IBUpdate q ja foi destruido. Bem estranho.


Tentei algumas dicas daqui do forum e só fzem mudar a mensagem no madexcept agora cada hora diz ser uma coisa diferente.


No onclose do principal já coloquei a sequencia de destruição dos datamodules pra q sejam destruídos primeiro os secunários e só depois os primários q contêem os IBDatabes e IBTransaction e nada de resolver.


Espero q descubra algo pq isso tem tirado meu sono a muito .....pior q tem um pc em um cliente q o sistema qndo fecha nao a a mensagem de erro mas continua em execucao por tras e qndo tenta abrir novamente diz q o executavel ta corrompido. :?
:shock:


:?: :?: :?: :?: :?: :?: :?:


Responder Citar

27/03/2006

Isaiasbass

A dica desse tópico resolveu o meu problema...agora é ver se volta neh

http://forum.devmedia.com.br/viewtopic.php?t=69850&highlight=exitprocess&sid=ad15ebb96ab9aaa0997294d3c29ab240


Responder Citar