【问题标题】:Runtime Error '3709' while accesing SQL database in VB6在 VB6 中访问 SQL 数据库时出现运行时错误“3709”
【发布时间】:2011-04-13 01:54:03
【问题描述】:

我有一个某人编写的 VB6 应用程序,但它不适用于某些尝试使用它的用户。

这是返回错误的运行代码:

 On Error GOTO error_handler
 ..
 Set db = New ADODB.Connection
 db.Open "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=****;Password=****; Initial Catalog=***;Data Source=****,1433"
 error_handler:
 If db.Error.count then
 strDBErrors = "No access to Main Database."
 For Each err In db.errors
  strDBErrors = strDBErrors & vbCrLf & err.Description
 Next
 MsgBox strDBErrors

这段代码运行后,我得到两个错误框。一个声明运行时错误 3709,另一个有两行:其中之一是我的自定义错误消息,第二个如果这样:“用户 用户 登录失败”。

这只发生在安装此程序的特定计算机上的一个用户身上。它不会在任何其他用户的任何其他计算机上发生。 我尝试在该计算机上使用该用户重新安装程序,但没有成功。

有什么想法吗?

【问题讨论】:

  • 对我来说听起来像是防火墙问题...
  • 将范围缩小到计算机与用户。该用户可以在不同的机器上运行该应用程序吗?其他用户可以在该机器上运行该应用吗?
  • 已将范围缩小到特定用户 - 该用户不能在任何机器上运行该程序,而任何其他用户都可以在任何机器上运行它。
  • 我查看了该特定用户的所有 Active Directory 属性 - 但我找不到任何与运行该程序的任何其他用户不同的属性。

标签: sql vb6 user-permissions


【解决方案1】:

不太清楚是什么问题, 但我只是删除了 Active Directory 上的用户并再次创建它,并且它起作用了。 但该用户不是任何拒绝组的成员。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多