При запуске следующей функции VBS, чтобы проверить, находится ли текущий пользователь в определенной группе безопасности, я получаю ошибку # 500 (переменная не определена) для строки strGroup = LCase(Join(CurrentUser.MemberOf))
.Функция VBS всегда возвращает False, когда определенная переменная определена
У меня есть Option Explicit
, объявленный в сценарии, так что это не удивительно. Однако, когда я объявляю переменную (Dim strGroup
), функция перестает работать и всегда возвращает false.
Function is_group_member(group)
Dim objNetwork
Dim objUser
Dim CurrentUser
' Set our default return value
is_group_member = False
' Directory Lookup
Set objNetwork = CreateObject("WScript.Network")
Set objUser = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & objUser.UserName)
strGroup = LCase(Join(CurrentUser.MemberOf))
' Set return value to true if the user is in the selected group
If InStr(strGroup, lcase(group)) Then
is_group_member = True
End If
End Function
Спасибо за ответ, я посмотрю на это. Похоже, что ваша ссылка на отладчик неверна, поскольку страница не найдена. Благодарю. –
Спасибо за отзыв по ссылке для загрузки, я исправил ее. –
Спасибо. Выйдя на пару встреч, он захватит его позже сегодня. –