{------------------------------------------------------------------------------} { Unit Name: SetIni Purpose : Set values in ini-files Author : Vesa Lappalainen Date : 13.7.2001 Changed : 28.10.2001/vl + works also in Linux (UpdateFile) ToDo : } {------------------------------------------------------------------------------} program setinisimple; {$APPTYPE CONSOLE} uses SysUtils, IniFiles; procedure Help; begin writeln(''); writeln('SetIni Ini-file Section Item Value [/q]'); writeln(''); writeln('Sets the selected Section/Item to new value in'); writeln('ini-file. Options /q set quiet, otherwise prints'); writeln('old value'); writeln(''); writeln('Example:'); writeln(' SetIni ./k2000p.ini User Name vesal'); writeln(''); writeln(' Sets in k2000p.ini:'); writeln(' [User]'); writeln(' Name=vesal'); writeln(''); writeln('Vesa Lappalainen 13.7.2001'); end; var name,sec,item,value,oldvalue:string; ini : TIniFile; begin if ( ParamCount < 4 ) then begin Help; exit; end; name := ParamStr(1); sec := ParamStr(2); item := ParamStr(3); value := ParamStr(4); ini := TIniFile.Create(name); if ( ParamCount < 5 ) or ( ParamStr(5) <> '/q' ) then begin oldvalue := ini.ReadString(sec,item,''); writeln('['+sec+']'); writeln(item+'='+oldvalue); end; ini.WriteString(sec,item,value); ini.Free; end.