碰到一个奇怪的问题,请大家帮忙解决
代码如下:
uses IniFiles;
var MyIni: TIniFile;
begin
MyIni:=TIniFile.Create('sysmon.ini');
edit1.text:=MyIni.ReadString('ServerConnection','SystemDBServer','');
end;
但是却不能显示项目所对应的值,不知是为什么?
后来我从WINDOWS目录下拷贝了一个win.ini文件,同样的写法,却能显示项目值,但不是指定项目的值(显示的是第一个项目值),同样不解?WIN.INI文件的内容如下:
[MCI Extensions.BAK]
aif=MPEGVideo
aifc=MPEGVideo
aiff=MPEGVideodsdsdsds
asf=MPEGVideo
asx=MPEGVideo
au=MPEGVideosysmon.ini文件的内容如下:[ServerConnection]
SystemDBServer=provider=sqloledb.1;server=athena;database=edzsys1;uid=dd;pwd=redips
UserDBServer=provider=sqloledb.1;server=athena;database=edzuser;uid=sd;pwd=redips

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var MyIni: TIniFile;
    begin
    MyIni:=TIniFile.Create('c:\a.ini');
    MyIni.WriteString('ServerConnection','SystemDBServer',
    'provider=sqloledb.1;server=athena;database=edzsys1;uid=dd;pwd=redips');
    MyIni.WriteString('ServerConnection','UserDBServer',
    'provider=sqloledb.1;server=athena;database=edzuser;uid=sd;pwd=redips');
    MyIni.Free;
    end;procedure TForm1.Button2Click(Sender: TObject);
    var MyIni: TIniFile;
    begin
    MyIni:=TIniFile.Create('c:\a.ini');
    Edit1.Text  := MyIni.ReadString('ServerConnection','SystemDBServer','');
    Edit2.Text :=  MyIni.ReadString('ServerConnection','UserDBServer','');
    MyIni.Free;
    end;
    没问题,你自己用程序写进入,再读出来试一下!
      

  2.   

    问题解决,原因是我在CREATE时没用INI文件的绝对路径。多谢