This is my function for write .ini type file :uses INIFiles; procedure SetConnectionString(ServerName, UserName, Password: string); var SYSINI: TINIFile; tmpstr: String; begin SYSINI := TIniFile.Create(ExtractFilePath(Application.ExeName)+'DB.INI'); try with SYSINI do begin WriteString('Database', 'ServerName', ServerName); WriteString('Database', 'UserName', UserName); tmpstr := Encrypt(Password, ''); WriteString('Database', 'Password', tmpstr); end; finally SYSINI.Free; end; end;procedure TInitForm.XP_Button1Click(Sender: TObject); begin if (trim(ServerName.Text)='') or (trim(UserName.Text)='') then begin ShowMessage('你的信息没有填写完整,请确认后重写!'); exit; end; SetConnectionString(ServerName.Text, UserName.Text, Password.Text); InitForm.ModalResult:= IDOK; end;
如果读不到INI文件中变量的值就给默认值,提示输入新值,否则继续
procedure SetConnectionString(ServerName, UserName, Password: string);
var
SYSINI: TINIFile;
tmpstr: String;
begin
SYSINI := TIniFile.Create(ExtractFilePath(Application.ExeName)+'DB.INI');
try
with SYSINI do
begin
WriteString('Database', 'ServerName', ServerName);
WriteString('Database', 'UserName', UserName);
tmpstr := Encrypt(Password, '');
WriteString('Database', 'Password', tmpstr);
end;
finally
SYSINI.Free;
end;
end;procedure TInitForm.XP_Button1Click(Sender: TObject);
begin
if (trim(ServerName.Text)='') or (trim(UserName.Text)='') then
begin
ShowMessage('你的信息没有填写完整,请确认后重写!');
exit;
end;
SetConnectionString(ServerName.Text, UserName.Text, Password.Text);
InitForm.ModalResult:= IDOK;
end;