我试图在ini文件中保存ADO连接字符串,但它没有被创建。我使用了IniFiles
和Forms
单位。
以下是我在数据模块中使用的代码。
procedure TDataModule2.DataModuleCreate(Sender: TObject);
var
FileIni : TIniFile;
begin
FileIni := TIniFile.Create(ExtractFilePath(Application.ExeName)+'atur.ini');
ADOConnection1.Connected:=False;
providerpath:='';
ADOConnection1.IsolationLevel:= ilReadCommitted;
providerpath:=FileIni.ReadString('Connection','CN',providerpath);
ADOConnection1.ConnectionString:= providerpath;
ADOConnection1.LoginPrompt:=False;
FileIni.Free;
end;
end.
答案 0 :(得分:0)
.ini文件不会在TIniFile.Create(...);
如果文件不存在!该文件将使用第一个
创建测试是否存在.ini文件,否则,将重要默认值写入新文件。
不要写空的.ini
文件。这与不存在的文件一样无用。
procedure TDataModule2.SetIniDefaults;
begin
FileIni.writeString('Connection','CN','defaultproviderpath');
// other defaults
end;
procedure TDataModule2.DataModuleCreate(Sender: TObject);
FileIni : TIniFile;
myIniPath:string;
begin
myIniPath := ExtractFilePath(Application.ExeName)+'atur.ini';
FileIni := TIniFile.Create(myIniPath);
providerpath:='DefaultValue'; // important default value
if NOT FileExists(myIniPath) then
begin
SetIniDefaults;
// after above line the file is created.
end;
....
providerpath:=FileIni.ReadString('Connection','CN',providerpath);
....
end;