var SectionNames: TArrayOfString; Asetup, Referent: string; procedure GetSectionNames(const filename: string; var SectNames: TArrayOfString); var i, SectionCount: integer; IniStrings: TArrayOfString; begin LoadStringsFromFile(filename, IniStrings); for i:= 0 to GetArrayLength(IniStrings)-1 do begin if IniStrings[i][1] = '[' then begin SectionCount:= SectionCount + 1; SetArrayLength(SectNames, SectionCount); Delete(IniStrings[i], 1, 1); Delete(IniStrings[i], Length(IniStrings[i])-1, 2); SectNames[SectionCount - 1]:= IniStrings[i]; end; end; end; procedure SetKeyID(); var login, KeyID: string; i: integer; begin login:= GetIniString('User_1', 'Login', '', Asetup); KeyID:= GetIniString('User_1', 'KeyID', '', Asetup); GetSectionNames(Referent, SectionNames); for i:= 0 to GetArrayLength(SectionNames)-1 do begin if GetIniString(SectionNames[i], 'BoxName', '', Referent) = login then begin SetIniString(SectionNames[i], 'KeyID', KeyID, Referent); end; end; end; procedure Boxname(); begin Referent:= ExpandConstant('{app}\Referent_setup.ini'); Asetup:= 'A:\Asetup.ini'; GetSectionNames(Referent, SectionNames); SetKeyID(); end; |