Published by Joao Morais on 29 Oct 2007 at 11:26 am
Access violation in module ‘DFWEDIT.DLL’
Você está trabalhando em um projeto no seu bom e velho Delphi, e sem qualquer cerimônia a IDE emite: “Access violation at address <...> in module ‘DFWEDIT.DLL’. Read of address <...>” ao abrir uma unit do projeto. Você pesquisa e descobre que esta biblioteca é do próprio Delphi. Fecha e reabre a IDE. Nada. Reinicia o micro. Nada. E agora?
Não sei exatamente do que se trata, mas os meus passos para fazer o problema aparecer, foram:
- Criar um projeto com Delphi 5 Professional.
- Abrir o mesmo projeto com Turbo Delphi Explorer.
- Resolver alguns erros de compilação, deixar o código compatível com os dois compiladores, etc., etc. e salvar o projeto.
- Voltar ao Delphi 5, reabrir o mesmo projeto e tentar abrir uma das units que foram abertas no Turbo Delphi.
Pronto. Se você teve sorte, ao abrir a unit você viu algo como isto aqui:

E depois disto a IDE não presta mais, você mal consegue fechá-la sem apelar para as vias de fato.
Este erro ocorre devido a um corrompimento do arquivo NomeDoGrupo.dsk, que é gravado na mesma pasta do .bpg, e este Arquivo é lido pela IDE para compor o menu File | Reopen. Porém, não adianta apenas remover o arquivo .dsk, a IDE faz um merge deste arquivo com informações do registro, é necessário também apagar as entradas “File*” da chave “HKEY_CURRENT_USER\Software\Borland\Delphi\5.0\Closed Files”. É uma chave do usuário, não precisa ter privilégio de administrador. Feito isto, basta fechar e reabrir a IDE para o erro desaparecer. Talvez problema semelhante possa ocorrer com outras versões antigas, então fica a dica.
5 Responses to “Access violation in module ‘DFWEDIT.DLL’”
Leave a Reply
You must be logged in to post a comment.
Antonio Da Neves on 10 Nov 2007 at 11:19 am #
Ai João obrigado pela dica, um dia sairei do grau de aprendiz e poderei retriuir, por em quanto muito obrigado.
Tamiris on 17 Jan 2008 at 5:05 pm #
Olha, queria só avisar pro pessoal que ache essa pagina que no meu caso, mexendo com o Delphi 6 essa mensagem apareceu, mas foi porque eu fazia referencia a um formulário e não tinha criado ele no formulário em que estava mexendo. Pra quem nao entendeu…
EX. errado:
if qryMoveFotos.IsEmpty then
MoverArquivo(’C:\Inforlub\Images\Products\’);
FormAguarde.BarraProgressao.StepIt;
EX. CORRETO:
FormAguarde := TFormAguarde.create(Application);
FormAguarde.show;
if qryMoveFotos.IsEmpty then
MoverArquivo(’C:\Inforlub\Images\Products\’);
FormAguarde.BarraProgressao.StepIt;
Joao Morais on 17 Jan 2008 at 5:36 pm #
A mensagem que você recebeu foi um Access Violation, no entanto não foi no módulo DFWEDIT.DLL. O seu erro é causado através da sua aplicação, e o erro reportado neste post é causado dentro da IDE do Delphi.
Denis Arndt on 02 Oct 2008 at 3:49 pm #
Cara… valeu pela dica.. tava no meio de um projeto e ja tava apavoradooo… ehehhe
Abraço!!!
Krom on 31 Dec 2009 at 5:41 am #
Thank you so much! You saved my day!
I’m developing hobby project (KaM Remake) and today I was going to work on it but the error appeared and I couldn’t find any solution but yours!