1 要好好研究 installshield express4.0 怎么使用,它当然能创见子目录。
2 你用的 是 bde 数据访问,需要在客户机器上配置 数据库别名。很麻烦,我也不会。
现在的数据访问大家都在用 ado ,它被 vb vc bc dephi 所采用,而且 win98 win2000 都内值
其数据驱动程序,数据访问高效 ,编程简单。不要再学 bde 了,麻烦而且也没有 ado 的控件好用。关键的还有你没有跟上技术发展的潮流!!

解决方案 »

  1.   

    需要为机器配置数据库别名(也就是你说的SBD)。你可以改用直接访问数据库文件的方式访问数据库,不用设置别名。
    Tabel1.DataBase:=ExtractFilePath(Application.ExeName)+'data';
    Tabel1.TableName:='数据库表的文件名';
      

  2.   

    我想你在创建安装程序的时候,应该把data子目录添加进去;同时要选上bde的安装文件。如果可以的话,在程序中应当加上动态设置alias的语句,如:procedure TDm1.InitDataBase(aliasnames :string;localpath:string);
    var
      AliasParams:TStringList;
      FilePath : string;
    begin
      FilePath := 'path=' +  DefaultDir + localpath +'\';
      Aliasparams:=TStringList.Create;
      AliasParams.Add(Filepath);  if not Session.IsAlias(aliasnames) then
      begin
        try
          Session.AddAlias(aliasnames,'STANDARD',ALiasParams);
          Session.SaveConfigFile;
        finally
          AliasParams.Free;
        end;
      end else
      begin
        try
          Session.ModifyAlias(aliasnames,AliasParams);
          Session.SaveConfigFile;
        finally
          AliasParams.Free;
        end;
      end;
    end;
      

  3.   

    An error occured while attempting to initialize the Borland Database Engine(error $2109)是因为BDE安装得有问题, 提示没有找到Alias sbd是因为没有建立别名