Ошибка VBScript при вызове GetObject («WinNT: // JohnDoe, Пользователь») - PullRequest
6 голосов
/ 08 февраля 2010

У меня есть код, который не затрагивался более года, но DC были обновлены с 2008 по 2008 R2. Специалисты AD утверждают, что это не обновление DC, но проблема началась сразу после того, как это произошло.

Ошибка выполнения Microsoft VBScript '800a0046'
В доступе отказано: «GetObject»

Ошибка в строке Set Group.

Set Group = GetObject("WinNT://" & Logon_name & ",User")

For each Member in Group.Groups
  If Member.Class = "Group" then
    If Member.Name = "TEST_AD_GROUP" Or Member.Name = "TEST_AD_GROUP2" then
      x = "true"
      Exit For
    End If
  End If
Next

Спасибо.

1 Ответ

6 голосов
/ 10 февраля 2010

Мне пришлось изменить код для передачи идентификатора пользователя и pwd.

Set objIADS = GetObject("WinNT:").OpenDSObject("WinNT://" & strDomain, strUsername, strPassword, ADS_SECURE_AUTHENTICATION)
Set objIADSUser = objIADS.GetObject("user", strUsername)

For each Member in objIADSUser.Groups
    If Member.Class = "Group" then
        If Member.Name = "TEST_AD_GROUP" then
            x = "true"
            EXIT FOR
        End If
    End If
Next
...