You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows 11 24H2中Access97数据库无密码却报‘无效密码’错误求助

Windows 11 24H2下Access 97数据库读取报错问题
  • 在Windows 11 24H2版本中,由于Jet引擎相关文件更新,Access 97数据库频繁无法读取。即使数据库未设置密码,Access 97仍会抛出**"Not a valid password"**错误,而Access 2000数据库可正常运行。

Jet引擎文件版本差异

Windows 11 24H2 26100.5074(路径:C:\Windows\SysWOW64)

  • msjet40.dll:大小1,289,216字节,版本10.0.26100.5074,组件为Microsoft Jet Engine Library
  • msjetoledb40.dll:大小349,696字节,版本10.0.26100.5074,组件为Microsoft OLE DB Provider for Jet

Windows 10至24H2之前的版本(路径:C:\Windows\SysWOW64)

  • msjet40.dll:大小1,318,912字节,版本4.0.9081.32,组件为Microsoft Jet Engine Library
  • msjetoledb40.dll:大小518,144字节,版本4.0.9810.0,组件为Microsoft OLE DB Provider for Jet

报错场景

  • ADO和DAO两种数据库连接方式均会导致Access 97数据库触发上述错误。

测试代码如下:

On Error Resume Next
Dim Conn As ADODB.Connection
Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Access97DB.mdb;Jet OLEDB:Database Password=1111"  ' 或设置Password=""(空密码)
'Access2000数据库可正常运行无报错,仅Access97数据库频繁出现错误。
If Err.Number = -2147217843 Then
    MsgBox Err.Number & vbCrLf & Err.Description  '错误提示:Not a valid password
Else
    Conn.Close
End If
Err.Clear

Dim Db As DAO.Database
Set Db = DAO.DBEngine.Workspaces(0).OpenDatabase(App.Path & "\Access97DB.mdb", False, False, ";PWD=1111")  ' 或设置;PWD=(空密码)
'Access2000数据库可正常运行无报错,仅Access97数据库频繁出现错误。
If Err.Number = 3031 Then
    MsgBox Err.Number & vbCrLf & Err.Description  '错误提示:Not a valid password
Else
    Db.Close
End If
Err.Clear

内容的提问来源于stack exchange,提问作者새주소

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 10:25:15