Erro na execução: "A memória não pôde ser read".

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Maya Fiuza
Usuário Nível 2
Usuário Nível 2
Mensagens: 50
Registrado em: 11 Out 2010 19:38
Localização: Foz do Iguaçu-PR
Contato:

Erro na execução: "A memória não pôde ser read".

Mensagem por Maya Fiuza »

Olá Fórum!
De repente, sem motivo aparente, o programa trava e joga na tela uma janela:
The supreme MS-Windows escreveu:"A instrução no 0x1600b176 fez referência à memória no 0x1600b176. A memória não pôde ser read.
Clique em 'OK' para finalizar o programa.
Esgotei meus recursos e minha sexta-feira. Alguém me salva?
Obrigada.
Harbour III, Qt Framework, HMG's, OOHG
2xExplorer, cxIDE, xEdit, EditPad
SQLite, MySQL, DBF
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por Maligno »

Teorias são muitas. Memória RAM com erro, invasão do espaço de memória de algum processo sem a devida permissão, bug/corrupção no programa (ou compilador/VM), bug/corrupção no Windows, etc. Isso acontece em qualquer máquina?
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maya Fiuza
Usuário Nível 2
Usuário Nível 2
Mensagens: 50
Registrado em: 11 Out 2010 19:38
Localização: Foz do Iguaçu-PR
Contato:

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por Maya Fiuza »

Olá! Na minha e em todas do meu cliente. Sendo que o servidor dele parece estar infectado há dias por um tal de W32.RAMNIT. Usei ha principio um pendrive dele e agora na minha maquina acusa também. Poderia haver alguma relação?
Em tempo: não testei ainda em outras maquinas, pretendo, mas não consegui arrancar ainda esta praga do W32.RAMNIT da minha maquina.
Os anti-vírus Avira, AVAST, NOD32 e outros foram usados sem sucesso.
Harbour III, Qt Framework, HMG's, OOHG
2xExplorer, cxIDE, xEdit, EditPad
SQLite, MySQL, DBF
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por Maligno »

Um vírus até pode ser a causa do problema. Mas o erro ocorre também numa máquina (seguramente) "limpa"? A hipótese de bug em RAM/programa/compilador/SO é pouco provável. Difícil dar um "chute" certeiro numa situação dessas. Normalmente se tenta isolar o problema a um ambiente bem conhecido. E a partir daí, elimina-se fatores. É por erro, tentativa e análise dos resultados.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
alaminojunior
Colaborador
Colaborador
Mensagens: 1717
Registrado em: 16 Dez 2005 21:26
Localização: Ubatuba - SP

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por alaminojunior »

Por acaso o seu executável utiliza alguma DLL ou recurso do sistema operacional ?
Compilador xHarbour 1.2.3 + Embarcadero C++ 7.30
MySQL c/ SQLRDD
HwGui + GTWVG
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por rochinha »

Amiguinhos,

Maya
Geralmente o Windows por padrão deixa ativada a autoexecução de drives de cd e pendrives, afim de montar o volume para leitura.

No caso dos drives de cd é possivel em suas propriedades desativar este recurso, mas no caso de pendrives somente via registro.

Por padrão todos pendrives ao serem formatados recebem o arquivo de inicialização AUTORUN.INI o qual muitas vezes, ao ser manipulado por um trojan ou virus, para que seja autoexecutado sem autorização do usuário.

Eu por padrão, deixei desativada a autoexecução de pendrives em minha maquina e costumo apagar este arquivo e criar um diretório com o mesmo nome no pendrive afim de dificultar que trojans em maquinas infectadas tentem escrever algo nos meus pendrives.

Eu geralmente tenho o costume de quando inserir um cd ou pendrive segurar a tecla SHIFH enquanto isto para evitar a autoexecção.

No caso de algo mais drástico como a manipulação do registro vai a dica:

- A o editor do Registro do Windows (Iniciar > Executar > regedit)
- Procurar a chave HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer.
- Clicar duas vezes em "NoDriveTypeAutoRun"
- Modificar o valor padrão de "95 0 0 0" para "91 0 0 0"
- Fechar a janela do registro do Windows e reiniciar.

Para fazer a limpeza destas maquinas sem reinstalar seria necessário usar algumas ferramentas mais drásticas e fortes que somente os antivirus, mas em se tratando de Windows, as sequelas sempre ficam.

Como o Maligno explanou, este tipo de problema realmente pode ocorrer em maquinas consideradas seguras, como a minha, que vem dando este tipo de erro, mas devido a falhas de energia que corromperam o registro.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Maya Fiuza
Usuário Nível 2
Usuário Nível 2
Mensagens: 50
Registrado em: 11 Out 2010 19:38
Localização: Foz do Iguaçu-PR
Contato:

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por Maya Fiuza »

Atenciosos colegas, obrigada!
Estou tentando ainda triângular o problema, quase pirei ontem, estava tudo indo bem e do nada. Minha máquina é novinha de estalar com forte configuração... Já revi os .PRGs para descarte, tudo OK. Recompilei alguns exemplos das Minigui e a msg não aparece para estes.
As sugestões foram preciosas, acho que aprendi. Fui desastrada mesmo.
Não uso DLL nem recurso do OS. Se ajudar, a msg só me aparece em alguns módulos do programa.
Maligno, escreveu:"Memória RAM com erro, invasão do espaço de memória de algum processo sem a devida permissão..."
A partir desta passei a especular a ação do W32.RAMNIT. Achar como eliminar esta praga já seria de grande valia também.
Um tchauzinho triste.
PS. motivo de edição posterior: corrigir erros de digitação.
Editado pela última vez por Maya Fiuza em 20 Nov 2010 18:01, em um total de 2 vezes.
Harbour III, Qt Framework, HMG's, OOHG
2xExplorer, cxIDE, xEdit, EditPad
SQLite, MySQL, DBF
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por Maligno »

A partir disso passei a especular a ação do vírus.
Por isso que é importante ter certeza de estar usando uma máquina limpa. Vírus não só pode gerar esse erro "per se", como pode conter bug que resulta em erros do tipo.

Claro que, quando falo em vírus, me refiro a qualquer tipo de malware. Programa é programa. Qualquer um pode conter bugs.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por Maligno »

A partir desta passei a especular a ação do W32.RAMNIT. Achar como eleminar esta prega já seria de grande valia também.
Claro que remover esse malware é importante. Mas apenas a fim de testar a ocorrência do erro em questão, abra o Task Manager e "mate" qualquer aplicação com nome estranho. Com uma memória mais "limpa", execute seu programa novamente e observe se o erro persiste.

Depois aproveite para checar o registro do Windows, em especial as chaves RUN em LocalMachine e CurrentUser, para ver se o desalmado não está se carregando por aí. Se estiver, apague as chaves dele, reinicie a máquina e verifique o Task Manager novamente. Se estiver tudo limpo, repita o teste no seu programa.

Adicionado PS:
Mas,... Tem um porém. Se o dito cujo infectou seu EXE é bem provável que tenha infectado (e corrompido) todos os EXEs utilizado por você. Incluindo seu compilador. Se isso ocorreu, vai ter que se livrar de todos eles e reinstalar tudo novamente. E dependendo do grau do dano, talvez até tenha que reformatar a máquina, já que nem sempre é possível recuperar todos os EXEs do SO, aplicativos, etc.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maya Fiuza
Usuário Nível 2
Usuário Nível 2
Mensagens: 50
Registrado em: 11 Out 2010 19:38
Localização: Foz do Iguaçu-PR
Contato:

Re: Erro na execução: "A memória não pôde ser read".

Mensagem por Maya Fiuza »

Segui suas sugestões.
Não consegui rastrear o malware, mas em outras 2 maquinas, aparentemente não infectadas, consegui rodar certinho sem erros.
Os 3 PCs do cliente foram formatados, mas o erro permanece. O que fiquei intrigada foi que na minha máquina que está dando "zica", antes rodava redondo. Mistério...
Obrigada.
Harbour III, Qt Framework, HMG's, OOHG
2xExplorer, cxIDE, xEdit, EditPad
SQLite, MySQL, DBF
Responder