Jump to content

Add user to group


Recommended Posts

What's wrong with the following snippet:

Dim $UserGroup, $UserName

$UserGroup = "Guests"
$UserName = "xGuest"

;Add User to group 
$objGroup = ObjGet("WinNT://" & @ComputerName & "/" & $UserGroup)
$objUser = ObjGet("WinNT://" & @ComputerName & "/" & $UserName)
If $objGroup.IsMember($UserName) = False Then
    $objGroup.Add($objUser.ADsPath)
EndIf
    
; Runtime error on the following line with the error msg below
;   $objGroup.Add($objUser.ADsPath) 
; Error: The requested action with this object has failed.
Link to comment
Share on other sites

Do you want to add a local or a domain user to the group?

For domain user please see this link.

Edited by water

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Link to comment
Share on other sites

Do you want to add a local or a domain user to the group?

For domain user please see this link.

It is a local account. The thing is the thread you link to claims that it works for a local account. While the variables have a different name and I have a check, as far as I can tell my instruction to add the user to the group is exactly the same.

The other part that bothers me is that when I check the values as I step through this $objGroup and $objUser appear to be valueless but $objUser.ADsPath shows the expected information.

Edited by MJPollard
Link to comment
Share on other sites

What's wrong with the following snippet:

Dim $UserGroup, $UserName

$UserGroup = "Guests"
$UserName = "xGuest"

;Add User to group 
$objGroup = ObjGet("WinNT://" & @ComputerName & "/" & $UserGroup)
$objUser = ObjGet("WinNT://" & @ComputerName & "/" & $UserName)
If $objGroup.IsMember($UserName) = False Then
    $objGroup.Add($objUser.ADsPath)
EndIf
    
; Runtime error on the following line with the error msg below
;   $objGroup.Add($objUser.ADsPath) 
; Error: The requested action with this object has failed.

This is a corrected version that appears to be working. I've only included the instructions. The check was changed to 'If Not' and the .IsMember was changed to $objUser.ADsPath.

$objGroup = ObjGet("WinNT://" & @ComputerName & "/" & $UserGroup & ",group")
$objUser = ObjGet("WinNT://" & @ComputerName & "/" & $UserName & ",user")
If Not $objGroup.IsMember($objUser.AdsPath) Then
    $objGroup.Add ($objUser.AdsPath)
EndIf
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...