Access violation att address
Alguem sabe como resolver este erro quando vou executar o projeto no Delphi me retorna este erro na tela de login que eu criei access violation at address 00ae7327 in module 'softarquivo.exe'. read of address 000001e0. delphi xe7
Anderson Saldanha
Curtidas 0
Melhor post
Natanael Ferreira
29/09/2017
Erro de violação de memória. Você está tentando acessar algo que já foi destruído ou ainda não foi criado.
Tente debugar sua tela de login para saber em que linha do código e que componente ocorre o erro.
Tente debugar sua tela de login para saber em que linha do código e que componente ocorre o erro.
GOSTEI 3
Mais Respostas
Anderson Saldanha
29/09/2017
vou posta a linha que me mostra debugando para voce ver
GOSTEI 0
Anderson Saldanha
29/09/2017
#codigo#
procedure TF_login.FormCreate(Sender: TObject);
begin
end;
procedure TF_login.btn_entrarClick(Sender: TObject);
begin
with dm.sql_login do
begin
Close;
sql.Clear;
sql.Add('select * from usuario');
sql.Add('where login = :login and senha = :senha');
ParamByName('login').Value := txt_login.Text;
ParamByName('senha').Value := txt_senha.Text;
open;
if RecordCount > 0 then
begin
F_login.Close
end
else begin
ShowMessage('USUARIO OU SENHA INCORRETO');
end;
end;
end;
end.
Debugando mostra que o erro esta no WITH dm.sql_login DO..
procedure TF_login.FormCreate(Sender: TObject);
begin
end;
procedure TF_login.btn_entrarClick(Sender: TObject);
begin
with dm.sql_login do
begin
Close;
sql.Clear;
sql.Add('select * from usuario');
sql.Add('where login = :login and senha = :senha');
ParamByName('login').Value := txt_login.Text;
ParamByName('senha').Value := txt_senha.Text;
open;
if RecordCount > 0 then
begin
F_login.Close
end
else begin
ShowMessage('USUARIO OU SENHA INCORRETO');
end;
end;
end;
end.
Debugando mostra que o erro esta no WITH dm.sql_login DO..
GOSTEI 0
Natanael Ferreira
29/09/2017
Se o erro aparece nesta linha, provavelmente você está tentando acessar o DM (Datamodule) e ele ainda não foi criado.
Coloque seu DM como Auto-Create forms (será criado automaticamente ao iniciar aplicação).
Para colocá-lo como Auto-Create Forms, vá no menu:
E coloque o DM para o "lado" do Auto-Create Forms.
Coloque seu DM como Auto-Create forms (será criado automaticamente ao iniciar aplicação).
Para colocá-lo como Auto-Create Forms, vá no menu:
Project/Options/Forms
E coloque o DM para o "lado" do Auto-Create Forms.
GOSTEI 1
Anderson Saldanha
29/09/2017
a dm ja esta no auto create forms isso que estou achando estranho.
esta o F_inicial depois o dm e o F_login
esta o F_inicial depois o dm e o F_login
GOSTEI 0
Anderson Saldanha
29/09/2017
fui futucando aqui conseguir valeu obrigado pela atençao
GOSTEI 0
Claudio Henrique
29/09/2017
Sabe informar qual era o problema?
GOSTEI 0