Lidt hjælp til et simpelt script
Mit problem er egentlig meget simpelt og jeg kan selv løsningen på den, men jeg kan ikke lige se hvordan jeg kommer derhen... heheSet objOU = GetObject("LDAP://" & strDN)
objOU.Delete "user", "cn=" & strDN
det er de 2 linjer jeg har problemer med, for i den øverste skal stien til OU'en brugeren ligger i, skrives, men ikke brugernavnet, og i den nederste skal brugernavnet så skrives, den nederste er jo meget nem, men jeg kan sgu ikke finde ud af at bruge split kommandoen nok til at kunne udelukkende at skrive alt undtagen det der ligger i CN=...
Det såmænd det hele, nogen der har et rigtig godt forslag...?
jeg er lidt løbet tør for ideér men nu er jeg jo også stadigvæk meget ny i det her VBS scripting...
Option Explicit
Dim strUsername, strDN, objOU, arrDN
strUsername = inputBox("Skriv hvilken bruger der skal slettes")
strDN = GetUserDN(strUsername)
arrDN = split(strDN, ",")
Set objOU = GetObject("LDAP://" & strDN)
objOU.Delete "user", strDN
' ---
' Converts a NT username in the current NetBIOS domains to the corresponding distinguished name
Function GetUserDN(strUserNTName)
' Declare variables
Dim objRootDSE, strDNSDomain, objTrans, strNetBIOSDomain, strUserDN
' Create objects
Set objTrans = CreateObject("NameTranslate")
Set objRootDSE = GetObject("LDAP://RootDSE")
' Retrieve DNS domain name
strDNSDomain = objRootDSE.Get("defaultNamingContext")
' Convert DNS domain name to NetBIOS domain name
objTrans.Init 3, strDNSDomain
objTrans.Set 1, strDNSDomain
strNetBIOSDomain = objTrans.Get(3)
' Remove trailing backslash
If Right(strNetBIOSDomain, 1) = "\" Then strNetBIOSDomain = Left(strNetBIOSDomain, Len(strNetBIOSDomain) - 1)
' Enable internal errorhandling and clear errorlog
On Error Resume Next
Err.Clear
' Convert NT username to Distinguished Name
objTrans.Init 1, strNetBIOSDomain
objTrans.Set 3, strNetBIOSDomain & "\" & strUserNTName
' Check for error
If Err.Number <> 0 Then
GetUserDN = ""
End If
' Clear errorlog and disable internal errorhandling
Err.Clear
On Error GoTo 0
strUserDN = objTrans.Get(1)
' If the returned distinguished name doesn't contain a common name (CN), then the user doesn't exist
If InStr(strUserDN, "CN") > 0 Then
' Return distinguished name of the user
GetUserDN = strUserDN
Else
' Return empty string
GetUserDN = ""
End If
End Function