VBS : Some Usefull, Local & AD, group functions
strComputer = "."
=============================================================
Get the SMBIOS asset tag from the Win32_SystemEnclosure class
=============================================================
Dim objWMI : Set objWMI = GetObject("winmgmts:")
Set objResults = objWMI.InstancesOf("Win32_SystemEnclosure")
bIsLaptop = false
For each objInstance in objResults
If objInstance.ChassisTypes(0) = 12 or objInstance.ChassisTypes(0) = 21 then
' Ignore docking stations
Else
Select Case objInstance.ChassisTypes(0)
Case "8", "9", "10", "11", "12", "14", "18", "21"
bIsLaptop = true
End Select
End if
Next
if bIsLaptop = true then it is a laptop
#############################################################################################################
===============================================
Get Local Group Name from groupe guid "grpguid"
===============================================
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Group",,48)
For Each objItem in colItems
if lcase(objItem.SID)=lcase(grpguid) then
GetLCGrpName=objItem.Name
exit for
end if
Next
#############################################################################################################
===========================================================
Check if the AD group which samaccountname = ADgroups exist
===========================================================
Set ADAdminGroup = GetObject("WinNT://" & USERDOMAIN & "/" & ADgroups & ",group")
if isnull(ADAdminGroup.AdsPath) or ADAdminGroup.AdsPath="" then
isgrpexist = false
else
isgrpexist = true
end if
#############################################################################################################
===========================
Get AD Group SAMAccountName
===========================
Dim USERDNSDOMAIN : USERDNSDOMAIN = wshShell.ExpandEnvironmentStrings("%USERDNSDOMAIN%")
Set objGroup = GetObject("LDAP://CN=Domain Users,CN=Users," _
& "DC="&split(USERDNSDOMAIN,".")(0) & "," _
& "DC="&split(USERDNSDOMAIN,".")(1) & "," _
& "DC="&split(USERDNSDOMAIN,".")(2) & "," _
& "DC="&split(USERDNSDOMAIN,".")(3))
GetADGrpName = objGroup.SAMAccountName
#############################################################################################################
================================================================
add AD groups named "ADgroups" to local group named "Localgroup"
================================================================
Dim USERDOMAIN : USERDOMAIN = wshShell.ExpandEnvironmentStrings("%USERDOMAIN%")
Set oDomainGroup = GetObject("WinNT://" & USERDOMAIN & "/" & ADgroups & ",group")
Set oLocalAdmGroup = GetObject("WinNT://" & strComputer & "/" & Localgroup & ",group")
oLocalAdmGroup.Add(oDomainGroup.AdsPath)
#############################################################################################################
==================================================================
add AD groups named "ADgroups" from local group named "Localgroup"
==================================================================
Dim USERDOMAIN : USERDOMAIN = wshShell.ExpandEnvironmentStrings("%USERDOMAIN%")
Set oDomainGroup = GetObject("WinNT://" & USERDOMAIN & "/" & ADgroups & ",group")
Set oLocalAdmGroup = GetObject("WinNT://" & strComputer & "/" & Localgroup & ",group")
oLocalAdmGroup.Remove(oDomainGroup.AdsPath)
#############################################################################################################
/image%2F0881799%2F20140610%2Fob_a8c7fe_logo2.jpg)
Commenter cet article