网上看了不少方法,基本上都尝试了,未解决!情大家指教!非常感谢!    程序里面用到Data控件连接Access数据库,数据库是直接利用VB软件来创建的,估计是97或者95的,在本机上运行一切正常。
    我是这样做的,首先用VB自带的打包软件进行打包,通过这种方法提取了所需的DLL OCX TLB 等所需的系统文件,并将数据库文件.mdb以及编译生成的.exe文件都放在同一目录下(预备后续再用SetupFactory打包生成正式的安装文件的),此时在一台未装VB Access的机子上运行,报错:
    类未注册。
    查找对象,其CLSID为:{00000010-0000-0010-8000-00AA006D2EA4}    然后我不断添加可能用到的DLL OCX文件到这个目录下,运行后现象依然。
    请问:1、我仅仅把所用到系统文件放到同一目录下运行,这样做可以么?  
          2、是否需要依依注册呢,那我能知道哪个未注册呢?具体如何在VB程序中来做呢?
          3、是否还是缺少某个DLL OCX文件导致报错呢?我现在已经添加了不少可能相关的,但还是不行的!
    
    另外我也试了,如果程序不含Data连接Access数据的话,打包后在别的机子上可以运行的,估计还是与Data连接数据库有关的。
    我记得以前用VC编的一个程序,只要将所用的系统文件以及.exe文件放到一个文件夹下,就可以在不同的机子上运行的,不过那个程序与数据库无关。
    
    

解决方案 »

  1.   

    肯定是哪个DLL或OCX没注册,并且与是否装了ACCESS没什么关系
      

  2.   

    具体如何注册呢?在VB程序里面代码咋写?请指教!
    另外只能把可能用到的DLL和OCX全部再注册一遍么,为什么有些需要手动注册,别的是VB程序自动完成注册的么?请高手指教!
      

  3.   

    打包
    如果要手动注册,可以使用一下办法:将下面的文本粘贴到文本编辑器中,然后存为以.reg为扩展名的文件。双击后将信息添加到注册表中。然后用鼠标右键点击一个动态链接库或OCX控件,在弹出的环境菜单中你将会看到Register和Unregister的选项。运用这个方法的前提是你的计算机上必须有regsvr32.exe文件。
    REGEDIT4
    [HKEY_CLASSES_ROOT\.ocx]
    @="ocxfile"
    [HKEY_CLASSES_ROOT\ocxfile]
    @=”OCX”
    [HKEY_CLASSES_ROOT\ocxfile\shell\Register\command]
    @="RegSvr32 \"%1\""
    [HKEY_CLASSES_ROOT\ocxfile\shell\Unregister\command]
    @="RegSvr32 /u \"%1\"" 
    REGEDIT4
    [HKEY_CLASSES_ROOT\.dll]
    @="dllfile"
    [HKEY_CLASSES_ROOT\dllfile]
    @=”DLL”
    [HKEY_CLASSES_ROOT\dllfile\shell\Register\command]
    @="RegSvr32 \"%1\""
    [HKEY_CLASSES_ROOT\dllfile\shell\Unregister\command]
    @="RegSvr32 /u \"%1\"" 
      

  4.   

    如果要编程注册,这里有个源代码可以参考--你读得懂的话
    VB安装盘\VB98\Wizards\PDWizard\Setup1\
      

  5.   

    基本确定由于使用Data控件连接Access数据库,导致报“类未注册的错误”,如何解决啊,请高手指教!
        我把那些DLL OCX文件手动注册了, 开始-运行-regsvr32 ***.DLL ***.OCX还是不行,我都不知道缺哪个文件的,唉 请指教!
      

  6.   

    找到那个没注册的OCX或DLL文件,在开始菜单那里打开运行对话框,输入regsvr32再加上文件的路径,如:
      regsvr32 E:\aaa.ocx
    ,然后回车(或按确定都行),当看到注册成功就行了。这是许多软件安装程序在注册文件时调用的命令,是系统提供的接口,有很大机会可以行。
      

  7.   

    如果还不行,那你就看看在引用或部件哪里,你引用了什么DLL或控件,点选住你引用的的那个库(或控件),下面就有路径了,还不行的话~~我也不知道了
      

  8.   

    MSVBVM60.DLL
    DATA控件应该属于这个库,是VB运行不可缺少的支持库
      

  9.   

    msvbvm60.dll我手动注册成功了,还是不行的。我基本上手动注册了所有的DLL和OCX还是不行,不过有些在注册时会报“已加载***.DLL,但没有找到DllRegisterServer输入点。无法注册这个文件。”我在本机上尝试手动注册这个DLL文件,现象相同,所以应该与这个DLL文件是否注册成功无关。
         请大家指教啊!
      

  10.   

    data控件是使用的DAO DAO3.5。
    注册这个 DLL        Dao350.dll
      

  11.   

    WINDOWS   ....SYSTEM32  ....下找到这个DLL ,复制到用户电脑的这个路径,注册它。
      

  12.   

    已经注册DAO35.DLL,现象依旧,郁闷啊,有没有前辈用发布过用Data 连接数据库的VB软件呢?请指教
      

  13.   

    文本打开你的vbp文件,找此串ID
      

  14.   

    还有个疑问请各位指教的:
          用VB自带打包工具进行打包的话,可以提取程序运行所需的DLL OCX等系统文件,并在用户安装时把它们释放到C盘对应位置的。请问安装时会打包软件会自动对这些系统文件进行注册么?  
        另外如果用setup factory打包的话会自动提取、释放、并注册么?
      

  15.   

    还有个疑问请各位指教的:
          用VB自带打包工具进行打包的话,可以提取程序运行所需的DLL OCX等系统文件,并在用户安装时把它们释放到C盘对应位置的。请问安装时会打包软件会自动对这些系统文件进行注册么?  
        另外如果用setup factory打包的话会自动提取、释放、并注册么?