问题描述我前一段时间在网上下载了那个vb学生管理系统在自己机子上输入用户名和密码可以登陆可是到别人的某些机子上 就无法登陆了。提示 application not defined or object not defined 然后就生成一个带有小锁的access文件 好像是数据库锁定了问题是我在我机子上是好的 到别人的某些机子上是好的 到另外某些机子就不行了 
我想知道为什么?问题分析:操作系统所带的数据库引擎版本有冲突。查一下,能够运行机器上是什么版本,在问题机器上也安装一下。一般说来,使程序引用的版本高于机器现有的,出现此问题
估计问题语句:
connstring = "provider=Microsoft.Jet.OLEDB.4.0;Data source =" & App.Path & "/xs.mdb请问怎么修改这个connstring才让他具有通用性?

解决方案 »

  1.   

    App.Path 改成从某个配置文件读取,那样你只要改配置文件,
      

  2.   

    '这样试试,换个斜杠
    " & App.Path & "\xs.mdb
      

  3.   

    ''''''''''''' ADO 方式
    Dim dataConn As ADODB.Connection
    Set dataConn = New ADODB.Connection
    dataConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db\db1.mdb;" & "Mode=Share Deny Read|Share Deny Write;Persist Security Info=False;Jet OLEDB:Database Password="
    dataConn.Open
      

  4.   

    配置自己的ODBC文件,然后打包到安装包里面。
    或者用文本数据库,如果你觉得那样也可以的话。
    数据库大小?别想它了!
      

  5.   

    问题不在这里,而是在工程引用 Microsoft ActiveX Data Objects 2.x Library。也就是用哪一个版本的库文件来解释你的数据库命令。如果程序中指定的 x 高于机器上现有的版本,就有问题。我的方法是采用尽可能低的版本,例如 2.1。
      

  6.   

    改成这样,你的程序本人已调试通过
    connstring = "provider=Microsoft.Jet.OLEDB.4.0;Data source =" & App.Path & "\xs.mdb"
      

  7.   

    ADO版本问题么?
    我觉得好像也可以打包了算了
    ………………我就是一根筋
    钻牛角尖了
    大家可以鄙视我
      

  8.   

    可能是ADO引用不对。
    里面有好多个ADO引用,有些不通用。
      

  9.   

    问题不在这里,而是在工程引用 Microsoft ActiveX Data Objects 2.x Library。也就是用哪一个版本的库文件来解释你的数据库命令。如果程序中指定的 x 高于机器上现有的版本,就有问题。我的方法是采用尽可能低的版本,例如 2.1。改为2.0了在她的机子上还是不行
    是不是必须他的机子上安装了visual studio才可以呢?
      

  10.   

    kao  我不知道怎么打包..
      

  11.   

    直接用  http://bstar.ys168.com  其他 文件夹里你给我打完包后再上传到ys168硬盘就可以了  谢谢亚 好人啊
      

  12.   

    源码在 http://bstar.ys168.com上 继续求助