Treeview Steuerelement mit OUs füllen

  • Hallo, ich habe hier im Forum schon Waters AD.au3 gefunden und eingebunden.

    Jetzt möchte ich die Funktion "AD_GetAllOUs", welche ein 2D Array mit den OUs liefert in ein TreeView Steuerelement packen.

    Nur komme ich jetzt nicht so ganz damit zurecht. Womöglich wird es doch besser sein, das Ganze über ADO abzufragen...

    oder kann mir da jemand Starthilfe geben?


    [autoit]

    Func _OUTreeviewBelegen ($TreeIndex)
    Local $ArrayAllOUs
    _AD_Open()
    $ArrayAllOUs = _AD_GetAllOUs()
    _ArrayDisplay($ArrayAllOUs)
    _AD_Close()

    [/autoit][autoit][/autoit][autoit]

    $TreeRootID = GUICtrlCreateTreeViewItem($ArrayAllOUs[1][0],$TreeIndex)
    for $i = 2 to UBound($ArrayAllOUs,1)-1
    $ArrayItem = StringSplit($ArrayAllOUs[$i][0],"\",2)
    For $It = 1 to Ubound($ArrayItem)-1
    GUICtrlCreateTreeViewItem($ArrayItem[$It],-1)
    next

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    Next
    EndFunc

    [/autoit]


    GrüüÜÜüüße, Goink :whistling:

  • Hallo Goink,

    stelle einfach einmal das Array als Textfile ein:

    [autoit]

    _FileWriteFromArray("AllOUs.txt",$ArrayAllOUs)

    [/autoit]

    dann können dir auch Leute helfen, die kein AD haben,

    mfg autoBert

  • Folgendes Skript habe ich vom engl. Forum mal heruntergeladen um einen TreeView aus einer Datei zu befüllen. Die Anzahl der vorlaufenden Leerstellen gab den Level des Eintrags im TreeView an.
    Bei Dir könnte die Anzahl der "\" als Indikator für den Level gelten.
    HTH

  • Hallo, ich habs jetzt mit klassischem ADO gelöst, werde den Code allerdings noch mal bereinigen müssen, bevor er "präsentationsfähig" ist ;)


    Gibt es im Treeview eigentlich eine Möglichkeit, nicht den "Texteintrag" eines Treeviews auszulesen, sondern noch einen anderen Wert zu hinterlegen?

    Sprich: im Treeview wird die Benutzerfreundliche Notation angezeigt und wenn draufgeklickt wird, wird die komplette zurückgegeben.

    Oder muß ich da mit einem zusätzlichen Array arbeiten?


    Grüße, Goink