我想在程序中实现这样的功能(类似注册):有一个变量,初始值为某一默认值,当用户运行该程序后,检测该变量值,如果为默认值,则提示用户输入新值。用户在输入值后,下次运行程序将不再提示输入新值而使用已有值。(注意不使用数据库)

解决方案 »

  1.   

    读注册表或INI文件都可以.
    如果读不到INI文件中变量的值就给默认值,提示输入新值,否则继续
      

  2.   

    如果保密性无要求可以使用INI文件,要不就通过在注册表里创建新键值读写来完成。
      

  3.   

    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;