请高手指点迷津

yasenjan2015 2013-02-06 08:14:15
我做了个软件,打包后安装在其他电脑上,一启动就发生“类不支持自动化或不支持期望的接口 431”错误,我引用的是MIcrosoft ActiveX Data 2.5 Library, 后来改用MIcrosoft ActiveX Data 2.8 Library 后就正常了
。过了几天,又把那个软件安装在其他电脑上,有发生“类不支持自动化或不支持期望的接口 431”错误,这时我改引用MIcrosoft ActiveX Data 2.5 Library, 这才正常。
我就纳闷了,为什么同样的软件在不同的电脑里发生两种情况:一个是支持MIcrosoft ActiveX Data 2.5 Library,而另一个支持MIcrosoft ActiveX Data 2.8 Library 。
我所使用的数据库连接方法是:
Dim connectionstring As String
connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=manager;Data Source = " + App.Path + "\data.mdb"
Cn.Open connectionstring
Cn.Close
请高手指点指点,如何做,才能把软件做得一次性稳定,如此调来调去真麻烦
...全文
958 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
现在还是人类 2013-02-07
  • 打赏
  • 举报
回复
你的 Cn 应该定义成 Object 类型,如: Dim Cn As Object 然后需要初始化,比如你原来的是用 New 初始化的,如: Dim Cn As New Connection 现在应为定义成 Dim Cn As Object 所以初始化过程变成 Set Cn = CreateObject("ADODB.Connection") 这个过程可以放到Load 事件里,如:

Dim Cn As Object    ' 定义连接对象
Private Sub Form_Load()
    Set Cn = CreateObject("ADODB.Connection")
    Cn.open "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=manager;Data Source = " + App.Path + "\data.mdb"
    ' 定义数据集对像
    Dim rs As Object
    Dim count As Long
    Set rs = CreateObject("ADODB.Recordset")
    rs.open "select count(*) as c from 表", Cn, 3, 1
    count = rs!c
    rs.Close
    Set rs = Nothing
    MsgBox "查询表的记录数为:" & count
End Sub

Private Sub Form_Unload(Cancel As Integer)
    Cn.Close
    Set Cn = Nothing
End Sub

yasenjan2015 2013-02-07
  • 打赏
  • 举报
回复
这个代码怎么用?插入哪儿?我有点笨
threenewbee 2013-02-07
  • 打赏
  • 举报
回复
代码不是给你了么。
熊孩子开学喽 2013-02-07
  • 打赏
  • 举报
回复
打包的时候把引用的库点上
of123 2013-02-07
  • 打赏
  • 举报
回复
你用来编译的机器是什么操作系统?找一台确认没有问题的机器,将 C:\Program Files\Common Files\System\ado 的内容覆盖你机器上对应路径的文件。 另外,最好的低版本的 Windows 下打包,安装时保留高版本系统文件。
yasenjan2015 2013-02-06
  • 打赏
  • 举报
回复
楼主,请说的具体点,怎么个自动化代替引用?具体代码?
饮水需思源 2013-02-06
  • 打赏
  • 举报
回复
在出错的机器上安装MDAC2.8MDACTYP.EXE试试
threenewbee 2013-02-06
  • 打赏
  • 举报
回复
那你可以使用自动化代替引用。 Set conn = CreateObject("ADODB.Connection") ...

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧