本人编了一个程序,DAO+ACCESS的,但是我在没有装VC的机器上运行时就弹出一个对话框,说“内部应用程序出错”。    我估计是数据库引擎的问题,请教,该如何解决

解决方案 »

  1.   

    你先用depends看看是否你的exe所依赖的库不全。另外,检查一下是否库的版本一致。
      

  2.   

    也可能是你用VC生成程序的时候没有将Use MFC in a Shared DLL改为 Use MFC in a Static Library~~~!
      

  3.   

    什么是 MDAC啊?请指教。库的版本怎么看 啊?谢谢
      

  4.   

    什么是 MDAC啊?
    就是ACCESS~~~
      

  5.   

    哈,是有点土啦啊那请那位告诉我,需要把那些DLL收集起来,放在程序的目录里,然后就可以执行了。我在一个安装有特殊的DAO的机器里运行过,不装ACCESS也可以运行。现在我的机器里装有ACCESS,也不能运行,应该不是这个问题。请做过ACCESS数据库的高手指教。他可能需要很特殊的DLL,但是我没有找到,谢了。
      

  6.   

    把DLL的名字告诉我也可,很急切知道啊,喷血
      

  7.   

    1.可先用VC的Depends工具(在Microsoft Visual Studio 6.0 Enterprise Tools中)看一看你的程序用了哪些DLL,安装时加入它们即可.或用Use MFC in a Static Library(这样程序用大一些).
    2.MDAC=Microsoft Data Access Components是Access数据库支持包,网上一搜一堆,你下一个安一下试试!
      

  8.   

    那你是不是自己写的DAO+ACCESS程序,然后你自己在没有安装VC机子上面测试阿???
    假如是这样,你直接打包了~~~
      

  9.   

    我安装了MDAC (Microsoft Data Access Components) 2.7 (简体中文)之后,还是没有搞定啊。但是我从一个朋友那里要了一个Data Access Objects装了后就正常了,请教高人。这2个东东有什么不同啊?
      

  10.   

    MDAC好像XP本身就有 你的应该是没有MFC运行时引起的吧 mfc42.dll或者mfc42u.dll
      

  11.   

    from sky cn:
    Data Access Objects(DAO) V2.0
    Dao Jet数据库引擎,如果您下载的软件用了DAO数据库,那么这个引擎是你需要的。
      

  12.   

    把VC里面的几个DLL文件拷贝到你的EXE所在文件夹下就可以了!
    有以下几个,自己去    vc里面找找!!
    mfc42.dll
    MFC42D.DLL
    MFCO42D.DLL
    MSVCIRTD.DLL
    MSVCP60D.DLL
    MSVCRTD.DLL
      

  13.   

    确认一点:
       1、绝对不是 mfc42.dll或者mfc42u.dll引起的。
       2、这个数据库程序是我自己编的,的确是用DAO编的,Access的数据库。
       3、上边各位兄弟们说的法子我都试验过了,把这些东西拷贝到文件夹里还是有一样的问题。
       4、还是jun_01(无名小卒) 这位仁兄说得的对,我是需要一个DAO JET,但是这个东西到哪里去找呢,我到Microsoft上找发现都是一些介绍DAO数据库知识的,郁闷啊。
       5、请教:哪里有关于Data Access Objects(DAO) V2.0这个东东的介绍,提供一下。
       不胜感激啊。这个东西已经郁闷很长时间了、
      

  14.   

    好了,搞定了,找到了一个下载DAO Jet的地址,装上就好了。不用状Access就可以运行的。下载地址1:http://act.it.sohu.com/download/show-11354.html 下载链接2:http://www.skycn.com/soft/11609.htmlOK,结贴了。来者有分,毕竟都是一番好意来帮助我啊。