小弟做了一个数据库的小软件,是用adoquery+access2000,在自己的机子上能运行,打包后在别人的机子上安装后,不能运行,也没出现什么错误提示,请问我该如何打包?

解决方案 »

  1.   

    adoquery+access2000设置好路径,直接拷贝文件应该就可以了。
    实在不行的话再打包进去一个MDAC2.7(ADO的最新驱动).
      

  2.   

    就是啊,这就是使用ADO的好处;
      

  3.   

    没有关系了,用ADO读取ACCESS只要对数据库文件和执行文件打包就可以了,
      我想你一定是设置了ACCESS的绝对路径程序启动的时候用ExtractFilePath(Application.ExeName)取得的路径设置好了
      

  4.   

    To:oylz
    何谓绝对路径?假设我的access数据库的路径是E:\a\mingpian.mdb,那么将其拷到他人
    机子上时,是否也要将access数据库的路径设置为E:\a\mingpian.mdb呢?能不能说仔细点,
    谢谢!
      

  5.   

    to tanyun1111(TY) 
    当然了,这样的话,如果安装到别人的机器上的时候,路径改变后就不能运行了;你可以在程序中设定路径:
    var
      DBPath:string;
      DBPath:=ExtractFilePath(Application.ExeName)+'\你数据库路径\mingpian.mdb';这里ExtractFilePath(Application.ExeName)表示的是你应用程序可执行文件的路径信息,他是一个string类型;
    发布access不需要额外的文件,你的数据库+应用程序(ADO)即可,但是这取决于你连接方式,bde或odbc就麻烦一些!
      

  6.   

    1﹑將你的程序與ACCESS數據庫放在同一個目錄下。
    2﹑在程序中連接數據庫前更改adoconnection的connectionstring:
     v_path:=ExtractFilePath(Application.ExeName)+'你的ACCESS數據庫文件名';//(例如﹕
                                          E:\a\mingpian.mdb,e:\a就是你的程序目錄)
     adoconnection1.connected:=false;
     adoconnection1.connectionstring:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+v_path+';Persist Security Info=False';
     adoconnection1.connected:=true;
    3﹑如果這樣還是不行﹐說明你的電腦沒有ADO的驅動吧﹐裝一個MDAC2.7就好了﹐。