我做了一个小的应用程序,用ACCESS做数据库,还调用了DLL文件,在设置INATALLSHIED时,不知怎么样将数据库和dll文件打包进去,我开发时用的都是ADO控件,没有用bde,好像也没有设置explore中的database,直接将ado控件中的connectionstring设置到我的数据库路径,运行起来功能都是我想要的,但在制作安装程序时,不知道怎么设置,
看了一些资料要设什么bde,我都没有用到,请救救我吧,高手们!
很急!!!!!!!!!!!!!!!!!!!!
望高手赐教 ,
在线等!!!!谢谢先

解决方案 »

  1.   

    其實不用做任何設置也可,因為win98以後的,都自帶ado驅動,如果你用的開發版本比較高,可考慮帶上 mdac2.7, install 後再執行其的安裝!
      

  2.   

    先更正,你有错字Inatallshied.  哈哈
    其实你不用设制。因为你可以完全不用设一个现成的odbc.你可以将一个做好的odbc源码,copy到你的程序里,大概一百多字吧。做成const  
    直接就可以设conn.connString := const String就行了。
      

  3.   

    to khzide(秦始皇) :我的意思是在ADOTABLE,AOOQUERY这些控件中不是有个属性connectionstring吗,我把设成我要使用的的数据库,形式是Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\My Documents\student\studentdb.mdb;Persist Security Info=False,运行没有任何问题,但是在制作安装的时候,把安装路径设到其他地方,不能找到数据库,我只有将数据库考到C:\My Documents\student才能运行,这说明根本没有打包进啊,用的还是绝对路径啊,请指点!!
      

  4.   

    你一个ini 配置文件
    [ado]
    Provider=Microsoft.Jet.OLEDB.4.0
    data source=
    ....
    程序运行查找ini文件设置,
    如果连接不成功,跳出配置窗口,进行动态配置,保存到配置文件,下次就可以了
      

  5.   

    可以调用EXTRACTFILEpATH(APPLICATION。EXECNAME)获得当前路径、
      

  6.   

    记得不清了 ADOconnection有个事件 是每次连接前执行的
    你可以在这里面指导定连接字符串  路劲如楼上所说   用变量 没问题的
      

  7.   

    关键是ADOconnection 的连接串不能写死,要动态设置
    sAppPath:=ExtractFileDir(Application.ExeName);是设置的全局变量procedure TfrmData.DataModuleCreate(Sender: TObject);
    var
      sProvider,sDataSource,sOther:string;
    begin
    // sAppPath 为应用程序所在路径。
       sProvider:='Provider=Microsoft.Jet.OLEDB.4.0';
       sDataSource:=';Data Source='+sAppPath+'\目录管理.mdb';
       sOther:=';Persist Security Info=False' ;
       //连接到指定的数据库    frmData.adoWdgl.Connected:=false;
        adowdgl.ConnectionString:=sProvider+sDataSource+sOther;
        adoWdgl.Connected:=true;
    end;
    这样可以。