cs_subzero
Messages postés71Date d'inscriptionmercredi 8 janvier 2003StatutMembreDernière intervention24 février 2012 14 janv. 2003 à 13:20
Salut à tous!
Note: Il faut faire attention avec ce programme si vous le mettez au démarrage, surtout si vous bricolez souvent la config de vos connexions internet, car il pourrait restaurer une ancienne config par dessus. Il faut refaire les fichiers REG... Quoi qu'il en soit, ce programme est destiné aux utilisateurs avertis!
Merci Nono40! C'est clair que ton code est mieux. Je suis passé à delphi il y a presque 1 mois je crois, avant je programmais avec BPW, j'ai encore les veilles habitudes! Vos conseils sont les bienvenus. à+
cs_Nono40
Messages postés962Date d'inscriptionmercredi 3 avril 2002StatutMembreDernière intervention12 septembre 20062 13 janv. 2003 à 23:40
Mais comme tu t'embête avec ton fichier ini !!!!
Regarde l'aide sur le type TIniFile de Delphi. Il permet de gérer des fichiers INI comme ceux de Windows le plus simplement du monde.
Attention : Seek(F,1) est inutile et faut, le premier octet du fichier est le numéro 0 : Seek(F,0)
Si tu tiens vraiement aux fichiers binaires ( ce que je ne conseille pas dans ce cas), utilise des fichiers de type Record. La déclaration du type est la suivante :
Type TBuf=Packed Record
bLeft:Integer;
bTop :Integer;
bWidth:Integer;
bHeight:Integer;
End;
var Form1 : TForm1;
F : file Of TBuf; // Fichier typé
buf : TBuf;
Puis pour l'écriture du fichier :
procedure savinifile;
begin if(bsave=false)then EXIT;
{$i-}assignfile(F,ininame);
rewrite(F); // Pas de taille car le fichier est typé
Buf.bLeft:=Form1.Left;
Buf.bTop:=Form1.Top;
Buf.bWidth:=Form1.Width;
Buf.bHeight:=Form1.Height;
Write(F,Buf); // Write plutôt que BlockWrite
closefile(f); {$i+}if(ioresult<>0){$i-}then bsave:=false;
end;
Et pour la lecture :
{$i-}AssignFile(F,ininame);
Reset(F);
Read(f,buf);
CloseFile(F);
form1.Left:=buf.bLeft;
form1.Right:=buf.bRight;
form1.Width:=buf.bWidth;
form1.Height:=buf.bHeight;
14 janv. 2003 à 13:20
Note: Il faut faire attention avec ce programme si vous le mettez au démarrage, surtout si vous bricolez souvent la config de vos connexions internet, car il pourrait restaurer une ancienne config par dessus. Il faut refaire les fichiers REG... Quoi qu'il en soit, ce programme est destiné aux utilisateurs avertis!
Merci Nono40! C'est clair que ton code est mieux. Je suis passé à delphi il y a presque 1 mois je crois, avant je programmais avec BPW, j'ai encore les veilles habitudes! Vos conseils sont les bienvenus. à+
13 janv. 2003 à 23:40
Regarde l'aide sur le type TIniFile de Delphi. Il permet de gérer des fichiers INI comme ceux de Windows le plus simplement du monde.
Attention : Seek(F,1) est inutile et faut, le premier octet du fichier est le numéro 0 : Seek(F,0)
Si tu tiens vraiement aux fichiers binaires ( ce que je ne conseille pas dans ce cas), utilise des fichiers de type Record. La déclaration du type est la suivante :
Type TBuf=Packed Record
bLeft:Integer;
bTop :Integer;
bWidth:Integer;
bHeight:Integer;
End;
var Form1 : TForm1;
F : file Of TBuf; // Fichier typé
buf : TBuf;
Puis pour l'écriture du fichier :
procedure savinifile;
begin if(bsave=false)then EXIT;
{$i-}assignfile(F,ininame);
rewrite(F); // Pas de taille car le fichier est typé
Buf.bLeft:=Form1.Left;
Buf.bTop:=Form1.Top;
Buf.bWidth:=Form1.Width;
Buf.bHeight:=Form1.Height;
Write(F,Buf); // Write plutôt que BlockWrite
closefile(f); {$i+}if(ioresult<>0){$i-}then bsave:=false;
end;
Et pour la lecture :
{$i-}AssignFile(F,ininame);
Reset(F);
Read(f,buf);
CloseFile(F);
form1.Left:=buf.bLeft;
form1.Right:=buf.bRight;
form1.Width:=buf.bWidth;
form1.Height:=buf.bHeight;