我想要做一个配置文件,实现程序转移到别的电脑上,能改快速修改程序中的数据库名称等。请问怎么弄啊??全部分全部献上。拜托~

解决方案 »

  1.   


    procedure TForm1.BitBtn1Click(Sender: TObject);
    begin
      Data1:= StrToInt(LabeledEdit1.Text);
      Data2:= EnCrypt(Trim(LabeledEdit2.Text),'S&s');
      Data3:= StrToFloat(LabeledEdit3.Text);
      Data4:= CheckBox1.Checked;  IniFile.WriteInteger('System','Data1',Data1);  //整型
      IniFile.WriteString('Mark','Data2',Data2);     //字符串型
      IniFile.WriteFloat('Pi','Data3',Data3);        //浮点型
      IniFile.WriteBool('Status','Data4',Data4);     //布尔型  IniFile.Free;
      Close;
    end;
      

  2.   

    对了,需要定义IniFile: TIniFile;
    //在本目录下生成程序同名配置文件
    IniFile:=TIniFile.Create(ExtractFilePath(Application.ExeName)+Ini); 
      

  3.   


    var
      dbini:      TIniFile;
      Host:       string;
      User:       string;
      Passwd:     string;
      database:   string;
    begin
      if not ADOConnection1.Connected then
      begin
        dbini := TIniFile.Create('.\DataBase.ini');
        try
          Host := dbini.ReadString('Dbinfo','Host','127.0.0.1');
          User := dbini.ReadString('Dbinfo','User','sa');
          Passwd := dbini.ReadString('Dbinfo','Passwd',   '');
          Database := dbini.ReadString('Dbinfo','Database','');
        finally
          dbini.Free;
        end;
        ADOConnection1.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info = False;User ID = ' + User +
                                           '; Password = ' + Passwd +
                                           '; Initial Catalog = ' + database +
                                           '; Data Source = ' + Host;
         //其它操作
    其中Ini文件命名问DataBase.ini ,和应用程序放在一个目录下面,Ini文件的内容如下:
    [Dbinfo]
       
    Host='数据库主机名或IP'   
    User='sa'   
    Passwd='你的密码'   
    Database='数据库名称'
    //其中的内容需自己修改
      

  4.   


    var
      dbini:      TIniFile;
      Host:       string;
      User:       string;
      Passwd:     string;
      database:   string;
    begin
      if not ADOConnection1.Connected then
      begin
        dbini := TIniFile.Create('.\DataBase.ini');
        try
          Host := dbini.ReadString('Dbinfo','Host','127.0.0.1');
          User := dbini.ReadString('Dbinfo','User','sa');
          Passwd := dbini.ReadString('Dbinfo','Passwd',   '');
          Database := dbini.ReadString('Dbinfo','Database','');
        finally
          dbini.Free;
        end;
        ADOConnection1.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info = False;User ID = ' + User +
                                           '; Password = ' + Passwd +
                                           '; Initial Catalog = ' + database +
                                           '; Data Source = ' + Host;
         //其它操作
    其中Ini文件命名问DataBase.ini ,和应用程序放在一个目录下面,Ini文件的内容如下:
    [Dbinfo]
       
    Host='数据库主机名或IP'   
    User='sa'   
    Passwd='你的密码'   
    Database='数据库名称'
    //其中的内容需自己修改
      

  5.   

    必须引用‘IniFiles’单元文件
      

  6.   

    为什么没有形成自动生成配置文件啊,我用的是merrymin的代码,成功是成功了,可是好像没生成配置文件
      

  7.   

    新建Ini文件命名问DataBase.ini ,和应用程序放在一个目录下面,Ini文件的内容如下:

    [Dbinfo]
        
    Host='数据库主机名或IP'   
    User='sa'   
    Passwd='你的密码'   
    Database='数据库名称'
    //其中的内容需自己修改
      

  8.   

    怎么提示用户'sa'登入失败啊?密码对的啊,ini名字也正确的
      

  9.   

    这个你就要看你的数据的用户名是什么了,一般在创建数据库的时候用户名都是‘sa’
    你可以通过ADOConnection控件去连接一下数据库,看看用户名和密码到底是什么,然后再写入到配置文件中
      

  10.   

    是sa,我在sql中用sa,还有密码,能连的上去的
      

  11.   

    procedure TForm2.FormCreate(Sender: TObject);
    var
      dbini:      TIniFile;
      Host:       string;
      User:       string;
      Passwd:     string;
      database:   string;
      filename:   string;
    begin
      if not ADOConnection1.Connected then
      begin
        dbini := TIniFile.Create('.\DataBase.ini');
        try
          Host := dbini.ReadString('Dbinfo','Host','');
          User := dbini.ReadString('Dbinfo','User','sa');
          Passwd := dbini.ReadString('Dbinfo','Passwd',   '');
          Database := dbini.ReadString('Dbinfo','Database','');
        finally
          dbini.Free;
        end;
        ADOConnection1.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info = False;User ID = ' + User +
                                           '; Password = ' + Passwd +
                                           '; Initial Catalog = ' + database +
                                           '; Data Source = ' + Host;
    end;
      

  12.   

    那你将最终的连接字符串Show出来看看是不是有问题
      

  13.   

    好像是因为文件名错了DataBase,我写成DataBase.ini了,所以不行,试过了,现在可以了