Lehrer/ Trainerkonsole

  • hallo!
    ich bastle grad an einer kleinen gui, mit der lehrer/ trainer auf den client-pcs im jeweiligen schulungsraum bestimmte remote-tasks ausführen können.
    erste aufgabenstellung: internetzugang blockieren:
    das würde ich mit psexec und netsh-befehlen machen (einfach den schülern/ teilnehmern den standardgateway ändern).

    das problem, vor dem ich gerade stehe:
    der trainerpc soll aus einer textdatei (die auf nem server liegt) die verfügbaren räume per fileread in ein combo-feld geladen bekommen...das fkt soweit

    Spoiler anzeigen
    [autoit]

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;RÄUME HOLEN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    Global $data_raeume
    $raumliste = FileOpen("z:\!raumliste.txt", 0)
    $zeile = 1
    While 1
    $read = FileReadLine($raumliste, $zeile)
    If $read = "" Then ExitLoop
    $data_raeume = $data_raeume & $read & "|"
    $zeile += 1
    WEnd
    ;und irgendwann:
    GUICtrlSetData ($cmb_raum, $data_raeume)

    [/autoit]


    wenn er über dieses combo-feld den raum ausgewählt hat,soll bei betätigung eines buttons "der raum geladen werden"
    das heisst: aus einer textdatei (ebenfalls am server) werden die hostnames der client-pcs ausgelesen und im list eingetragen:

    Spoiler anzeigen
    [autoit]

    Case $btn_raum_laden
    ;hier sollte meiner meinung nach die list "geleert" werden, da ich sonst mehrfache einträge bekomme
    $raum_read = GUICtrlRead($cmb_raum)
    Global $data_raum
    $raumfile = ("z:\"& $raum_read & ".txt")
    ;~ MsgBox(0,"",$raumfile)
    $raumfile= FileOpen ($raumfile,0)
    $zeile = 1
    While 1
    $read = FileReadLine($raumfile, $zeile)
    If $read = "" Then ExitLoop
    $data_raum = $data_raum & $read & "|"
    $zeile += 1
    ;~ MsgBox(0,"",$data_raum)
    WEnd
    GUICtrlSetData($list_clients, $data_raum)

    [/autoit]


    wenn der button betätigt wird, werden die gleichen einträge erneut in die list eingetragen....

    kann mir da jmd helfen??

    danke und mfg
    losh

    p.s.: falls erforderlich, poste ich natürlich auch den ganzen code...

    Einmal editiert, zuletzt von losh (12. September 2008 um 18:13)

    • Offizieller Beitrag

    Ich sehe jetzt nicht, welches Problem du hast.
    Findest du nicht die Verknüpfung vom gewählten Eintrag aus der Combo zur zugehörigen Client-Datei? Oder wo liegt der Hund begraben? :D
    Ich würde es (wie wohl bei mir nicht anders zu erwarten :rofl: ) mit Array lösen ==> _FileReadToArray() .

    • Offizieller Beitrag

    OK - so sollte es klappen:

    Spoiler anzeigen
    [autoit]

    Case $btn_raum_laden
    ;hier sollte meiner meinung nach die list "geleert" werden, da ich sonst mehrfache einträge bekomme
    ; JA - muß geleert werden:
    _GUICtrlListBox_ResetContent($list_clients) ; leert Liste
    $raum_read = GUICtrlRead($cmb_raum)
    ;~ Global $data_raum ==> Deklaration am Skriptanfang, hier nur:
    $data_raum = ''
    $raumfile = ("z:\"& $raum_read & ".txt")
    ;~ MsgBox(0,"",$raumfile)
    $raumfile= FileOpen ($raumfile,0)
    $zeile = 1
    While 1
    $read = FileReadLine($raumfile, $zeile)
    If $read = "" Then ExitLoop
    $data_raum = $data_raum & $read & "|"
    $zeile += 1
    ;~ MsgBox(0,"",$data_raum)
    WEnd
    GUICtrlSetData($list_clients, $data_raum)

    [/autoit]
  • @ bugfix: du bist echt der beste!*schleim*^^
    so funktionierts! :thumbup:

    GtaSpider : kuhl, schau ich mir genauer an!

    dieses thema setze ich jedoch mal auf [gelöst]

    danke euch!!!!

    mfg