Explorer Neustart

  • Starte ich die Batch-Datei mit de cmd-Kommandos

    TASKKILL /F /IM explorer.exe

    Start explorer.exe

    per Doppelklick wird der Explorer beendet und danach wieder neu gestartet mit dem Ergebnis, dass der Desktop wieder angezeigt wird.

    Starte ich jedoch die Batch-Datei aus einem AutoIt-Programm heraus

    Run("batch.bat")

    so wird der Explorer ebenfalls beendet. Aber statt der Anzeige des Desktops wird der Ordner "DieserPC" geöffnet, und der Bildschirm bleibt ansonsten schwarz.

    Was kann ich tun? Bzw. was mache ich falsch?

  • Hallo BugFix,

    vielen Dank für Deine Antwort.

    Mit AutoIt-Befehlen hatte ich es schon versucht, hatte aber auch nicht geklappt. Deshalb bin ich auf die etwas abwegige Batch-Methode gekommen. Aber eigenartig ist es schon, dass der Batch-Aufruf über Autoit anders reagiert als der direkte Start der batch-Datei.

    Jedenfalls möchte mich ich bei dir sehr bedanken, denn mit deiner Empfehlung "Restarting explorer" klappt es jetzt prima.

  • Hab das gleiche Problem wie DOheim.

    Starte ich die Batch manuell funktioniert es. Starte ich es mit AutoIt bleibt der Bildschirm schwarz.

    Das von BugFix verlinkte Skript funktioniert, jedoch bekomme ich oft die folgende Meldung.

  • AutoIt
    _RestartExplorer()
    
    Func _RestartExplorer()
        While ProcessExists("explorer.exe")
            ProcessClose("explorer.exe")
        Wend
        Run(@WindowsDir & "\explorer.exe")
    EndFunc   ;==>_RestartExplorer

    Das sollte es erledigen ;)

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Leider nein.

    Es funktioniert zwar, jedoch wird der Iconcache nicht geleert.

    Wenn ich z. B. das Icon des UAC-Schilds ändere bleibt dies bei einer Desktopverknüpfung unverändert.

    Erst wenn ich die Batch-Datei, die im 1. Post beschrieben wird, manuell starte funktioniert es.

    AutoIt
    #RequireAdmin
    
    While ProcessExists("explorer.exe")
        ProcessClose("explorer.exe")
    WEnd
    
    FileDelete(@LocalAppDataDir & "\Microsoft\Windows\Explorer\iconcache*.*")
    
    Run(@WindowsDir & "\explorer.exe")
  • naja, das war bisher auch nicht die Anforderung ;)

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Wenn Du eine Art Desktop-refresh machen möchtest versuche es mal mit der Beendigung des DWM.EXE - Prozess (Desktop Windows Manager).

    Dieser startet sich von alleine wieder und baut den Desktop neu auf.

    Unter Windows 7 bzw. WinPE muss ich immer das Hintergrundbild tauschen (nach dem schon alles gelaufen ist) und da hat das funktioniert!

    lg

    Racer