Objekt Eigenschaften per Funktionsübergabe

  • Hallo zusammen

    Ich möchte über Objekte (LDAP) verschiedene Eigenschaften aus der Domäne des jeweiligen Benutzers auslesen.

    [autoit]


    $oInfo = ObjGet("LDAP://" & $FQDN)
    $sInfo = $oInfo.givenName

    [/autoit]


    Der FQDN string ist 100% korrekt, ich bekomme auch Daten zurück.
    Jedoch möchte ich den String givenName durch eine Variable ersetzen, die ich der Funktion übergebe.
    Dadurch könnte ich beliebige Daten aus der Domäne auslesen, ohne eine grosse "Switch" Struktur in der Funktion.

    Doch wenn ich es mit einer Variable mache, funktioniert es nicht mehr!

    [autoit]


    $sProperty = "givenName"
    $oInfo = ObjGet("LDAP://" & $FQDN)
    $sInfo = $oInfo.$sProperty

    [/autoit]


    Gibt es dafür eine Lösung? Ich bekomme schon beim kompillieren eine Syntax Error....
    Gruss Veronesi

    Einmal editiert, zuletzt von veronesi (9. Januar 2012 um 09:32)

  • Schau Dir mal in meinem AD UDF die Funktion _AD_GetObjectAttribute an. Die macht genau was Du brauchst.

    BTW:

    Warum schreibst Du solche Funktionen selbst und verwendest nicht z.B. meine UDF?
    Wenn Du nur eine einzelne Funktion aus einer UDF benötigst, dann verwende Obfuscator um alle unbenutzten Funktionen und Variablen zu löschen und so das Skript klein zu halten.