Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1207 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [Delphi] EAccessViolation sur TStringList [Résolut]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Delphi] EAccessViolation sur TStringList [Résolut]

n°2261110
Flagad'awa​re
c pô moi, j'ai pas touché!
Posté le 24-06-2015 à 21:49:52  profilanswer
 

Salut les gens
 
j'ai un problème EAccessViolation quand j'utilise un stringlist sur ce code:
 

Code :
  1. procedure TForm1.Button2Click(Sender: TObject);
  2. var
  3.   i:Integer;
  4.   SelectedDir:string;
  5.   Chemin:string;
  6.   Info   : TSearchRec;
  7. begin
  8.   LstFichier := TStringList.Create;
  9.          
  10.   if SelectDirectory('Select a directory',  'Desktop', SelectedDir) then
  11.   begin
  12.     SLDir:=TStringList.Create;
  13.     RecurseSubFolder(SelectedDir);
  14.          
  15.     for i:= 0 to (sldir.count)-1 do
  16.     begin
  17.       LstFichier.Clear;
  18.       Chemin := IncludeTrailingPathDelimiter(SLDir.Strings[i]);
  19.       If FindFirst(Chemin+'*.*',faAnyFile,Info)=0 Then
  20.       Begin
  21.         Repeat
  22.           If ((Info.Attr And faDirectory)=0) then LstFichier.Add('Dossier '+inttostr(i)+' '+Chemin+Info.FindData.cFileName);
  23.         Until FindNext(Info)<>0;
  24.         FindClose(Info);
  25.       End;
  26.    
  27.       LstFichier.Free;
  28.     end;   
  29.     SLDir.Free;
  30.     ShowMessage('Fini');
  31.   end;
  32. end;


 
 
RecurseSubFolder ça vient du code qu'a posté Gilbert Geyer sur cette page à 16h52 http://www.developpez.net/forums/d [...] er-disque/
 
j'ai juste viré les uppercase
 
si je met un memo.lines.add à la place du LstFichier.Add et que je met en commentaire tout ce qui a trait au stringlist tout marche bien mais je ne peut pas utiliser le stringlist LstFichier
 
mon stringlist est bien initialisé...
 
quelqu'un a une chtite idée?


Message édité par Flagad'aware le 25-06-2015 à 20:47:14
mood
Publicité
Posté le 24-06-2015 à 21:49:52  profilanswer
 

n°2261230
Flagad'awa​re
c pô moi, j'ai pas touché!
Posté le 25-06-2015 à 20:52:13  profilanswer
 

yeurf c'est bon j'ai trouvé en utilisant le pas à pas (pour la première fois...)
 
il fallait déplacer le LstFichier := TStringList.Create; au début de la boucle for i:= 0 to (sldir.count)-1...
 
j'ai pas fait attention qu'il fallait re-créer le stringlist après le free...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  [Delphi] EAccessViolation sur TStringList [Résolut]

 

Sujets relatifs
[RESOLU]Delphi xe7 : peux pas installer les TMSDelphi XE7 : un TstausBar qui ne rafraîchit pas
delphi[DELPHI] TImage dans un TScrollBox
[DELPHI] Recherche les occurences de trois ou quatre lettres....[Résolut] Calculer ceci en delphi : 20X19X18X17X16
avtiver delphi xe2 facilementDelphi - le clic de la souris fait des siennes
[DELPHI] initialiser un string dans sa déclaration... 
Plus de sujets relatifs à : [Delphi] EAccessViolation sur TStringList [Résolut]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR