Fórum Executável apresentando erro no Windows 98 #342352
06/06/2007
0
Nosso executável hoje tem +- 13 megas, após compactação via UPX, ele tem caído para +- 3 megas, o problema apareceu hoje em máquinas com windows 98.Aparece a seguinte mensagem:
´Memória insuficiente para executar esse programa.Feche um ou mais programas e tente novamente ´
Alguém por um acaso já passou por esse tipo de problema no WIN 98, ou sabe a solução ?
Obs:Utilizamos delphi 7, dbExpress.
De qualquer, agradeço desde já a atenção despendida a todos.
´Memória insuficiente para executar esse programa.Feche um ou mais programas e tente novamente ´
Alguém por um acaso já passou por esse tipo de problema no WIN 98, ou sabe a solução ?
Obs:Utilizamos delphi 7, dbExpress.
De qualquer, agradeço desde já a atenção despendida a todos.
Wrquessada
Curtir tópico
+ 0
Responder
Posts
07/06/2007
Massuda
O Win98 tem limitações com relação a quantidade de forms(*) que tem no seu programa. O limite exato depende (entre outras coisas) da quantidade de componentes que tem em cada form. Nesse caso, a única solução é modularizar sue programa, de modo que alguns forms sejam implementados em BPLs carregadas pelo programa.
(*) Isso não tem relação com o modo usado para criar os forms.
Normalmente, o Windows pode manter apenas parte do seu programa na memória e carregar o código do disco quando precisar. Isso não acontece quando você usa o UPX. Nesse caso, seu programa é todo descompactado na memória e executado a partir dessa imagem descompactada. Na prática, seu programa agora gasta mais memória do que gastava antes de você usar o UPX.
(*) Isso não tem relação com o modo usado para criar os forms.
...após compactação via UPX...
Na verdade isso afeta apenas o tamanho do seu programa no disco.Normalmente, o Windows pode manter apenas parte do seu programa na memória e carregar o código do disco quando precisar. Isso não acontece quando você usa o UPX. Nesse caso, seu programa é todo descompactado na memória e executado a partir dessa imagem descompactada. Na prática, seu programa agora gasta mais memória do que gastava antes de você usar o UPX.
Responder
Gostei + 0
08/06/2007
Paullsoftware
O que o Massuda disse faz sentido, eu passei por algo semelhante uma vez e tive que no meu caso, dividir alguns forms em ´Executaveis´ a parte não foi bem uma modularização, mais funcionou depois que fiz isso...
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)