Jump to content

VBScript - Verständnisproblem bei GetObject


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo,

 

verstehe gerade mal die Welt nicht mehr... :eek:

 

Kurz erklärt lese ich, mit diesem Script" den ADSPath aller User in unserer Domäne aus um damit mit GetObject den User als Object zu holen, damit ich danach das HomeDirectory ändern kann.

Den Pfad lese ich dann über objRS.Fields(0).Value (siehe Code unten) aus. Das Ganze sieht dann so aus: LDAP://CN=Administrator,CN=Users,DC=domain,DC=local

 

Wenn ich nun versuche ein Userobject mit GetObject und dem ADSPath als Parameter zu holen, bekomme ich, wenn ich die Eigenschaften und Attribute des Userobjectes folgende Fehlermeldung:

 

"...Der Moniker "" ist unbekannt..."

 

Kopiere ich den ADSPath manuell als Parameter von GetObject funktioniert es wunderbar.

 

Wo ist mein Fehler. Ich habe nun schon hundertmal drübergeschaut, ich kann keinen Fehler finden... :(

 

Gruß,

Shemeneto

 

 

Dim strDomainDN, strBase, strFilter, strAttrs, strScope, objConn, objRS, objUser, homeD, newServer, newHomeD, ldapPath


strDomainDN = "dc=bsgn,dc=mkk,dc=local"   
strBase   =  "<LDAP://" & strDomainDN & ">;"
strFilter = "(&(objectclass=user)(objectcategory=person));" 
strAttrs  = "ADSPath;"
strScope  = "subtree"

Set objConn = CreateObject("ADODB.Connection")
objConn.Provider = "ADsDSOObject"
objConn.Open "Active Directory Provider"
Set objRS = objConn.Execute(strBase & strFilter & strAttrs & strScope)
objRS.MoveFirst
While Not objRS.EOF
Set objUser = GetObject(objRS.Fields(0).Value)
homeD = objUser.Get("homeDirectory")
homeD = Split(homeD, "\")
If LCase(homeD(2)) = LCase("alterServer") Then
	newServer = "neuerServer"
	newHomeD = "\\" & newServer & "\" & homeD(3) & "\" & homeD(4)
	WScript.Echo newHomeD
	objUser.Put "homeDirectory", newHomeD
	objUser.SetInfo
End If
Set objUser = Nothing
   objRS.MoveNext
Wend

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...