GARANTIR DESCONTO

Fórum Dispose | Treeview #346585

24/09/2007

0

Estou migrando um sistema de Delphi 5 para o BDS 2006.

No evento onDeletion de um treeview.. tem um Dispose(Node.Data).

No BDS... quando aciono este comando... está dando AccessViolation.

Alterei para
if Assigned(Node.Data) then
Dispose(Node.Data)

mas mesmo assim ele entra no Dispose...

Alguém tem uma ideia de como resolver!?


Diegus

Diegus

Responder

Posts

24/09/2007

Massuda

Experimente fazer...
if Assigned(Node.Data) then begin 
  Dispose(Node.Data);
  Node.Data := nil;
end;



Responder

Gostei + 0

25/09/2007

Diegus

Experimente fazer...
if Assigned(Node.Data) then begin 
  Dispose(Node.Data);
  Node.Data := nil;
end;


Massuda.. desde já agradeço a atenção...
Mas ainda não funcionou... Invalid Variant Type!

Mais alguma sugestão!?!? Preciso muito resolver isto!

Valeu!


Responder

Gostei + 0

25/09/2007

Paulo Samurai

Outra sugestão baseada na do colega massuda:

  
var
  p: ^UmTipo;
begin
  p := Node.Data; 
  if p <> nil then dispose(p);
  Node.Data := nil;


p deve ser do mesmo tipo que voce armazena em node.data

[]´s


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar