Wolvie 0 Denunciar post Postado Janeiro 9, 2008 Olá pessoal Gostaria de saber o que voces fazem para conseguir achar o motivo de um access violation misterioso ... Já debuguei e o erro ocorre logo após um end .... não é dentro de nenhum processo, não está tentando acessar alguma coisa não criada ... está me irritando já, estou desde manhã tentando achar este erro e tá dificil ... Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Janeiro 9, 2008 É quando fecha alguma tela ? Teria de verificar algum objeto que foi criado e não destruído... pode ser diferentes problemas... Compartilhar este post Link para o post Compartilhar em outros sites
Marcelo R Moura 0 Denunciar post Postado Janeiro 10, 2008 posta o codigo ae pra gente dar 1ma olhada... Compartilhar este post Link para o post Compartilhar em outros sites
Andre Renato 0 Denunciar post Postado Janeiro 15, 2008 Amigos, estou tendo o mesmo maldito problema! Esse trecho de código estava funcionando perfeitamente até há pouco, do nada começou a dar esse access violation que tá me tirando do sério. O erro ocorre na linha em negrito e se eu ignoro ela com comentário, acontece na que está em itálico. Tem algo errado? procedure TfrmSelecao.dbgSelecaoDblClick(Sender: TObject); var CdCliente: string; CheckYesNo: string; begin if dbgSelecao.Fields[1].AsString = '' then MessageDlg('Efetue a pesquisa antes de clicar no grid!', mtError, [mbOK],0) else begin CheckYesNo := dbgSelecao.Fields[0].AsString; CdCliente := dbgSelecao.Fields[1].AsString; if UpperCase(CheckYesNo) = UpperCase('SIM') then begin qryAltera_Envio.SQL.Clear; qryAltera_Envio.SQL.Add('UPDATE custom.temp_envio_cobranca_pj t '); qryAltera_Envio.SQL.Add('SET t.aoenvia = ''NÃO'''); qryAltera_Envio.SQL.Add('WHERE t.cdcliente_envio = '+ QuotedStr(CdCliente)); qryAltera_Envio.ExecSQL; end else if UpperCase(CheckYesNo) = UpperCase('NÃO') then begin qryAltera_Envio.SQL.Clear; qryAltera_Envio.SQL.Add('UPDATE custom.temp_envio_cobranca_pj t '); qryAltera_Envio.SQL.Add('SET t.aoenvia = ''SIM'''); qryAltera_Envio.SQL.Add('WHERE t.cdcliente_envio = '+ QuotedStr(CdCliente)); qryAltera_Envio.ExecSQL; end; qryTemp_Envio.Refresh; qrySelec_Envio.Active := false; qrySelec_Envio.Active := true; qryTitulos.ExecSQL; dbgSelecao.Refresh; end; end; Compartilhar este post Link para o post Compartilhar em outros sites
Andre Renato 0 Denunciar post Postado Janeiro 16, 2008 Ow turma! Dá uma força pra gente ai, rs... Valeu! Compartilhar este post Link para o post Compartilhar em outros sites
Andre Renato 0 Denunciar post Postado Janeiro 16, 2008 Só mais uma coisa: ao entrar no debug e posicionar o mouse sobre o que está em negrito CdCliente := dbgSelecao.Fields[1].AsString; Apresenta a mensagem: expression illegal in evaluator O que acaba ocasionando o access violation O que fazer pra essa PORCARIA entender que existe valor dentro do campo indice 1 da DbGrid????????????? Me ajudem, pelo amorrr!!! Valeu! Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo_Iron 0 Denunciar post Postado Janeiro 17, 2008 Andre faz um teste, seu dbgrid esta ligado a um data source ligado a um table ou query, correto??? Pq você não teste o campo da query ou table em vez de testar o campo da dbgrid? Só p/ ver qual o valor que ele vai te retornar. Estou pensando em outra solução, valew??? Compartilhar este post Link para o post Compartilhar em outros sites
Andre Renato 0 Denunciar post Postado Janeiro 18, 2008 Então, o problema é que eu to ligando esse grid a query em tempo de execução, não sei se vai apresentar o resultado da maneira que eu to precisando. O mais engraçado: tava funcionando perfect, do nada começou a dar isso. Compartilhar este post Link para o post Compartilhar em outros sites
Andre Renato 0 Denunciar post Postado Janeiro 18, 2008 Cara, o caminho era exatamente o que você falou, ficou assim: CodCliente := qryTemp_Envio.fieldbyname('CDCLIENTE_ENVIO').AsString; E com isso o Access Violation foi com os anjos, hehehehehe Valeu pela dica. Abraço! Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo_Iron 0 Denunciar post Postado Janeiro 18, 2008 Que bom Andre que o problema foi resolvido. Estamos aqui p/ isso p/ ajudar. Qualquer duvida posta ai!!! Compartilhar este post Link para o post Compartilhar em outros sites