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
| //en partant du principe que tes sections s'appellent toujours scrutageX avec X croisant:
void SupprimerEtDecale( AnsiString inifile, int position )
{
TIniFile *ini = new TIniFile( inifile ) ;
DeleteFile( ChangeFileExt(inifile, ".tmp" ) );
TIniFile *iniTMP = new TIniFile( ChangeFileExt(inifile, ".tmp" ) ) ; //fichier temporaire
ini->EraseSection( "scrutage" + IntToStr(position) ) ;
TStringList *sections = new TStringList() ;
ini->ReadSections( sections ) ;
for( int i=0; i< sections->Count; i++ )
{
TStringList *keys = new TStringList() ;
ini->ReadSectionValues( sections->Strings[i],keys ) ;
for( int j=0; j < keys->Count; j++ )
{
iniTMP->WriteString( "scrutage" + IntToStr(i+1), keys->Strings[j], ini->ReadString( sections->Strings[i],keys->Strings[j],"") ) ;
}
delete keys ;
}
delete sections ;
delete ini ;
delete iniTMP ;
DeleteFile( inifile ) ;
RenameFile( ChangeFileExt(inifile, ".tmp" ) , inifile ) ;
} |