Explorer zweimal öffnen und je links und rechts zur Hälfte anordnen

  • Hallo!
    Ich bekomme es nicht hin!
    Ich möchte gerne den Explorer in einer Zwei-Fenster-Ansicht öffnen.
    Den Explorer zweimal zu öffnen gelingt mir mit einem skript
    C:\WINDOWS\EXPLORER.EXE /E,C:\
    C:\WINDOWS\EXPLORER.EXE /E,D:\
    Nun kann man mit der "Windows-Taste" und den Pfeiltasten die aktiven Fenster links oder rechts zur Hälte des Bildschirmes anordnen.
    Ich bekomme es nur nicht hin!
    Kann mir da jemand helfen?
    Gruß
    Sven

  • Sofern es so gadacht war:

    [autoit]


    Global $taskbarH = 80

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

    openFolder("C:\",0,0,@DesktopWidth/2,@DesktopHeight-$taskbarH)
    openFolder("D:\",@DesktopWidth/2,0,@DesktopWidth/2,@DesktopHeight-$taskbarH)

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

    Func openFolder($folder,$x,$y,$b,$h,$waitTime = 30)
    $dirName = StringSplit($folder,"\")
    If $dirName[0] < 2 Then
    $dirName = $folder
    Else
    $dirName = $dirName[$dirName[0]]
    EndIf

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

    ShellExecute($folder)

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

    if WinWait($dirName,"",$waitTime) = 0 Then
    MsgBox(0,"Fehler","Warten auf Fenster " & $dirName & " gescheitert.")
    Else
    winMove($dirName,"",$x,$y,$b,$h)
    ;WinSetState($dirName,"",@SW_MINIMIZE)
    EndIf
    EndFunc

    [/autoit]
  • Vielen Dank schon mal für eure Unterstützung!
    Und das auf einem Feiertag!!
    Ich bin leider nicht fit in solchen Sachen.
    Ich dachte mit nur, dass es doch nicht so schwer sein kann, den Tastaturbefehl "Windows-Taste" und "rechter Pfeil" nach einem "run-Befehl" zu schreiben.
    So in der Art:
    run (C:\WINDOWS\EXPLORER.EXE /E,C:\ )
    #left
    run (C:\WINDOWS\EXPLORER.EXE /E,D:\ )
    #right

  • Joar Bugfix, war mir klar. Hatte das nur aus meinem Startup Script rauskopiert, da ist Flexibilität eher unwichtig. Was den Fenstertitel angeht passt auch was nicht ganz (hab das bei mir eigentlich mit fixen Fenstertiteln). ;)

  • Hallo misterspeed:
    Wenn ich das skript direkt nach einem Neustart ausführe, kommt: Fehler. Warten auf Fenster gescheitert.

    Vielleicht denke ich ja zu einfach! Aber ist der Tastaturbefehl "WSin+Pfeil rechts" so kompliziert?

    Gruß
    Sven

  • Ja das kann durchaus sein, wie vorhin erwähnt gab es noch einen Fehler was den Fenstertitel anbelangt. Diese Variante sollte nun besser funktionieren, Vorraussetzung ist aber, dass du Windows 7 mit deutscher Sprache verwendest und dass die Explorer Fenster jeweils maximal 30 Sekunden brauchen um zu erscheinen. Direkt nach dem Windowsstart kann das je nach Rechner durchaus ein wenig dauern. sofern das bei dir ein Problem sein sollte kannst du den letzten Parameter $waitTime erhöhen. Bei anderen Windowsversionen müsste man vermutlich "CLASS:?????" entsprechend anpassen und auch der Fenstertext "Adresse...." muss ggf. geändert werden.

    [autoit]


    Global $taskbarH = 80

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

    openFolder("C:",0,0,@DesktopWidth/2,@DesktopHeight-$taskbarH)
    openFolder("D:",@DesktopWidth/2,0,@DesktopWidth/2,@DesktopHeight-$taskbarH)

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

    Func openFolder($folder,$x,$y,$b,$h,$waitTime = 30)

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

    If StringRight($folder,1)='\' Then $folder = StringTrimRight($folder,1)

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

    ShellExecute($folder)

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

    if WinWait("[CLASS:CabinetWClass]","Adresse: " & $folder,$waitTime) = 0 Then
    MsgBox(0,"Fehler","Warten auf Fenster " & $folder & " gescheitert.")
    Else
    winMove("[CLASS:CabinetWClass]","Adresse: " & $folder,$x,$y,$b,$h)
    ;WinSetState("[CLASS:CabinetWClass]","Adresse: " & $folder,@SW_MINIMIZE)
    EndIf
    EndFunc

    [/autoit]

    2 Mal editiert, zuletzt von misterspeed (23. Februar 2014 um 10:19)

  • Bei anderen Windowsversionen müsste man vermutlich "CLASS:?????" entsprechend anpassen und auch der Fenstertext "Adresse...." muss ggf. geändert werden.


    Auch in der englischen Version hat das Fenster die Klasse "CabinetWClass".

    Edit: Ich hatte "andere Windowsversionen" auf die Sprache und nicht auf die Version bezogen, kleines Missverständnis.

  • Hier die billig gemurkste Version:

    [autoit]


    Send("#e")
    sleep(500)
    Send("#{LEFT}")
    sleep(500)
    Send("#e")
    sleep(500)
    Send("#{RIGHT}")

    [/autoit]


    Wenn du das in den Autostart haust, geht es garantiert schief :P

    Wer andern eine Bratwurst brät
    der hat ein Bratwurstbratgerät.