Bonjour,
J'ai des soucis avec ce code
Avec le Btn1, le filestream s'ouvre, mais la boucle for ne s'exécute pas, et le FS est libéré aussitôt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70 type PAtome = ^TAtome; TAtome = record Index : Integer; Mot : WideString; end; procedure TForm1.FormCreate(Sender: TObject); Var i : Integer; vChaine : WideString; vPMot : PAtome; begin List_Test := Tlist.Create; for i:=0 to 10 do begin New(vPMot); vPMot.Mot := 'Chaine '+WideChar(12448+i); vPMot.Index := i+1; List_Test.Add(vPMot) end; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin List_Test.Clear; List_Test.Free; end; procedure TForm1.Button1Click(Sender: TObject); Var i : Integer; vChaine : WideString; vPMot : PAtome; vNomFichier : String; vF : TFileStream; begin vF.Create('Test_Liste.cvs', fmOpenWrite); for i:=0 to List_Test.Count-1 do begin // vF.Create('Test_Liste.cvs', fmOpenWrite); vPMot := List_Test.Items[i]; vF.Write(vPMot^.Mot, Length(vPMot^.Mot)*Sizeof(WideChar)+1); // vF.Free; end; vF.Free; end; procedure TForm1.Button2Click(Sender: TObject); Var i : Integer; vChaine : WideString; vPMot : PAtome; vNomFichier : String; vF : TFileStream; begin for i:=0 to List_Test.Count-1 do begin vF.Create('Test_Liste.cvs', fmOpenWrite); vPMot := List_Test.Items[i]; vF.Write(vPMot^.Mot, Length(vPMot^.Mot)*Sizeof(WideChar)+1); vF.Free; end; end;
Avec le btn2, le prog rentre dans la boucle for, pour en sortir aussitôt que le FS est ouvert en écriture
Je n'ai pas encore testé un Btn3
Quelqu'un pourrait-il m'indiquer ce qui foire, ou comment régler le débuggueur pour que ça marche ?
Merci pour vos conseils
Partager