Wie setzt man die Ordner-Optionen am elegantesten?

  • Hallo Zusammen,

    wie kann ich am besten die Ordner-Optionen setzen?

    Also per Hand müsste man das so machen:
    - Explorer starten
    - Menu "Extras" -> "Ordneroptionen..." (!x + !o)
    - zu Reiter "Ansicht" wechseln
    - gewünschte Optionen auswählen
    - "ok" drücken
    - Fenster wieder alle schliessen

    Via MouseMove und MouseClick läßt sich das gewiß realisieren, aber ich dachte mir, es müßte eine geschicktere Variante geben. Entweder über Registry-Einträge oder ober ControlClick.

    Wenn ich mit dem AutoIt-Info nachschauen, dann haben die einzelnen Felder leider keine eindeutige Control-ID oder ClassNameNN. :(

    Wie würdet ihr das machen oder gibt es da schon was?

    Besten Dank und happy computing!
    R@iner

  • Ich mach es so.

    Spoiler anzeigen


    Run("C:\WINDOWS\explorer.exe")
    Sleep(2000)
    ;
    ; Aktiver Fenster Titel:
    ; ----------------------
    WinWait("Eigene Dateien");15:10:56
    Sleep(2000)
    send ("{ALT}") ;Ansicht
    send ("a")
    Sleep(500)
    send ("d") ;Ansicht Details auswählen
    Sleep(500)
    send ("{ALT}") ;Ordneroptionen
    send ("x")
    send ("o")
    send ("!w") ;Stadart wiederherstellen
    sleep (500)
    send ("h") ;herkömlichen Windowsordner
    send ("s") ;jeden Ordner im selben Fenster
    Sleep(1000)
    send ("b") ;übernehmen

    send ("+{TAB}") ;zum Karteireiter Ansicht wechseln
    send ("{RIGHT}")
    AutoItSetOption("MouseCoordMode",0); relative Mausekooridinaten
    ;~ sleep (2000)
    send ("!w") ;Stadart wiederherstellen
    ;~ send ("{TAB 3}")
    MouseClick("left",61,197,1, 0)
    ;~ sleep(2000)

    send ("{DOWN}")
    Send("{space}")
    ;~ sleep(2000)
    ;~ MouseClick("left",61,206,1, 0);Ansichtsoptionen für jeden Ordner abspeichen = AUS
    ;~ Sleep(500)
    send ("{DOWN}")
    Send("{space}")
    ;~ sleep(2000)
    ;~ MouseClick("left",61,222,1, 0) ;Aut. Nach Netzwerkdruckern suchen = AUS
    ;~ Sleep(500)

    send ("{DOWN}")
    ;~ Send("{-}")
    ;Dateigrößeninformation in Ordnertips anzeigen


    send ("{DOWN}")
    Send("{space}")
    ;~ sleep(2000)
    ;~ MouseClick("left",61,238,1, 0) ;Einfache Dateifreigabe = AUS
    ;~ Sleep(500)

    send ("{DOWN}")
    Send("{space}")
    ;~ sleep(2000)
    ;~ MouseClick("left",61,252,1, 0) ;Einfache Ordneransicht = AUS
    ;~ Sleep(500)

    send ("{DOWN}")
    Send("{space}")

    ;~ MouseClick("left",61,271,1, 0) ;Ereiterungen für bekannte Dateitypen ausblende = AUS
    ;~ Sleep(500)

    send ("{DOWN}")
    ;~ sleep(2000)
    ;Geschützte Systemdateien ausblenden

    send ("{DOWN}")
    ;~ sleep(2000)
    ;Inhalte von Systemordnern anzeigen

    send ("{DOWN}")
    Send("{space}")
    sleep(2000)
    ;Miniaturansicht nicht zwischenspeichern

    send ("{DOWN}")
    Send("{space}")
    sleep(2000)
    ;Ordnerfenster im eigenen Prozess starten

    send ("{s}")
    ;spring zu "Systemsteuerung unter Arbeitsplatz einblenden"
    Send("{space}")
    sleep(2000)

    send ("{DOWN}")
    sleep(2000)
    ;komprimierte Ordner in anderer Farbe anzeigen

    send ("{DOWN}")
    ;Versteckte Dateien und Ordner

    send ("{DOWN}")
    Send("{space}")
    sleep(2000)
    ;Alle Dateien und Ordner anzeigen


    send ("{DOWN}")
    Send("{space}")
    ;Versteckte Dateien und Ordner ausblenden

    Send ("{DOWN}")
    sleep(2000)
    ;Vollständigen Pfad in Adressleiste Anzeigen

    Send ("{DOWN}")
    Send("{space}")
    sleep(2000)
    ;Vollständigen Pfad in Titelleiste Anzeigen

    Send ("{DOWN}")
    Send("{space}")
    sleep(2000)
    ;Vorherige Ordnerfenster bei der Anmeldung wiederherstellen

    Sleep(10000)

    ;~ MouseClick("left",61,286,1, 0) ;
    ;~ Sleep(500)
    ;~ send ("{PGDN}")
    ;~ send ("{PGDN}")
    ;~ Sleep(500)
    ;~ MouseClick("left",61,318,1, 0) ;
    ;~ Sleep(500)
    ;~ MouseClick("left",61,335,1, 0) ;

    Sleep(500)
    send ("!b")
    Sleep(1000)
    send ("!a") ;Für alle Ordner übernehmen
    Sleep(500)
    send ("!j") ;bestätigen
    sleep (500)


    send ("+{TAB}");Zum Karteireiter Offlinedateien
    send ("{RIGHT}")
    send ("{RIGHT}")
    Sleep(1000) ;Offlinedateien deaktivieren
    send ("!d")
    Send("{-}") ;Offlinedateien safe_unchecked!!
    Sleep(1000)
    send ("!b")
    Sleep(500)
    send ("{ENTER}")
    Sleep(500)
    send ("!{F4}")


    exit


    Die Auswahl der Optionen ist natürlich jedem Selbst überlassen

    Gruß
    Wolke

  • Hallo Zusammen,

    @mega: Ja, ich will die Optionen einmal setzen und dann für alle übernehmen.

    Wolke: Besten Dank für das Script. Dadurch spare ich mir Arbeit. Speziell der "Standard wiederherstellen" in Deinem Code war ein sehr guter Tipp.

    Trotzdem wüßte ich gerne, wie man solche Menus kontrollierter bedienen kann. Jetzt durch das "Standard wiederherstellen" hat man ja nen definierten Ausgangszustand, aber wie frage ich sonst solche Checkboxen ab, ob sie bereits gesetzt sind oder nicht, wenn nichtmal die IDs eindeutig sind? Mit ner eindeutigen ID könnte man es ja mit ControlComand und IsChecked machen, aber so.

    Besten Dank und weiterhin happy computing!
    R@iner