Jak automatycznie ponownie uruchomić awarię aplikacji w systemie Windows 10

Aby automatycznie ponownie uruchomić awarię aplikacji w systemie Windows 10, użyj modułu obserwującego PowerShell i Harmonogramu zadań. Moduł obserwujący sprawdza proces klasycznej aplikacji komputerowej; po jego zamknięciu skrypt odczeka 60 sekund i ponownie go uruchomi.

Ta opcja powoduje ponowne uruchomienie aplikacji po każdym wyjściu, w tym normalnym zamknięciu. Nie pozwala ona na odzyskanie niezapisanych danych ani naprawienie przyczyny awarii. Opcja „Jeśli zadanie się nie powiedzie” w Harmonogramie zadań ponawia nieudane zaplanowane zadanie; nie monitoruje ona procesu aplikacji w sposób ciągły, dlatego w tym przewodniku wykorzystano niewielki skrypt monitorujący.

Zanim zaczniesz

Użyj tej metody w przypadku tradycyjnego programu komputerowego, który ma stabilną wersję .exe. Aplikacje ze sklepu Microsoft Store i programy, których programy uruchamiające przełączają się na inny proces pomocniczy, mogą nie być wiarygodnie śledzone. Jeśli aplikacja zawiera własną opcję ponownego uruchomienia lub odzyskiwania, użyj jej zamiast niej.

Skonfiguruj funkcję obserwowania ponownego uruchomienia

  1. 1. Znajdź plik wykonywalny aplikacji

    W menu Start kliknij prawym przyciskiem myszy skrót aplikacji i wybierz Więcej > Otwórz lokalizację pliku, jeśli jest dostępna. Kliknij skrót prawym przyciskiem myszy, wybierz Właściwości i skopiuj ścieżkę z folderu docelowego . Użyj rzeczywistego pliku wykonywalnego, a nie .lnkskrótu, programu aktualizującego ani narzędzia do raportowania awarii.

    Okno Eksploratora plików pokazujące wybrany plik ExampleApp.exe w folderze Program Files.
    Wybierz główny plik wykonywalny programu.
  2. 2. Utwórz i zapisz skrypt programu PowerShell

    Otwórz Notatnik, wklej ten skrypt i zastąp przykładową ścieżkę skopiowaną ścieżką. Pozostaw ścieżkę w pojedynczych cudzysłowach.

    Notatnik wyświetlający polecenia programu PowerShell służące do uruchamiania, oczekiwania na zakończenie i opóźniania procesu aplikacji.
    Skrypt sprawdza proces, czeka na jego zakończenie i po chwili próbuje ponownie.
    $exe = 'C:\Path\To\ExampleApp.exe'
    $processName = [System.IO.Path]::GetFileNameWithoutExtension($exe)
    $workingDirectory = Split-Path -Path $exe -Parent
    $delaySeconds = 60
    
    while ($true) {
        $process = Get-Process -Name $processName -ErrorAction SilentlyContinue |
            Select-Object -First 1
    
        if (-not $process) {
            try {
                $process = Start-Process -FilePath $exe -WorkingDirectory $workingDirectory -PassThru -ErrorAction Stop
            } catch {
                Start-Sleep -Seconds $delaySeconds
                continue
            }
        }
    
        Wait-Process -Id $process.Id -ErrorAction SilentlyContinue
        Start-Sleep -Seconds $delaySeconds
    }

    Start-ProcessOtwiera plik wykonywalny i Wait-Processczeka na jego zakończenie. Opóźnienie pomaga zapobiec gwałtownym ponownym uruchomieniom, jeśli aplikacja ciągle się zawiesza. Zapoznaj się z dokumentacją Start-Process i Wait-Process firmy Microsoft .

    W Notatniku wybierz Plik > Zapisz jako , wybierz Dokumenty, nadaj plikowi nazwę Restart-App.ps1i ustaw opcję Zapisz jako typ na Wszystkie pliki , aby Notatnik nie dodał pliku .txt.

    Okno dialogowe Zapisz jako systemu Windows ustawione na zapisanie pliku Restart-App.ps1 w folderze Dokumenty z zaznaczonymi wszystkimi plikami.
    Zapisz skrypt z rozszerzeniem .ps1 i wybierz opcję Wszystkie pliki.
  3. 3. Utwórz zadanie uruchamiane po zalogowaniu

    Wyszukaj w menu Start Harmonogram zadań i otwórz go. Wybierz Utwórz zadanie . Na karcie Ogólne wpisz nazwę, np. Uruchom ponownie aplikację ExampleApp , a następnie zaznacz opcję Uruchom tylko po zalogowaniu użytkownika , aby okno aplikacji otworzyło się w sesji pulpitu.

    Karta Ogólne harmonogramu zadań z opcją Uruchom tylko wtedy, gdy użytkownik jest zalogowany wybraną dla zadania ponownego uruchomienia.
    Zachowaj zadanie w sesji pulpitu zalogowanego użytkownika.

    Otwórz kartę Wyzwalacze , wybierz Nowy , ustaw opcję Rozpocznij zadanie na Przy logowaniu , wybierz swoje konto, jeśli pojawi się monit, i kliknij OK . Jest to zgodne z udokumentowanym przez firmę Microsoft schematem wyzwalacza logowania i akcji wykonywalnej w Harmonogramie zadań .

    Karta wyzwalacza Harmonogramu zadań jest ustawiona tak, aby uruchamiała się w momencie zalogowania bieżącego użytkownika systemu Windows.
    Wybierz opcję Zaloguj się dla konta, z którego korzystasz w aplikacji.
  4. 4. Skonfiguruj akcję i zapobiegaj duplikowaniu obserwatorów

    W sekcji Akcje wybierz Nowy , a następnie Uruchom program . Wpisz powershell.exeProgram /skrypt . W polu Dodaj argumenty użyj poniższej ścieżki skryptu i przejdź YourNamedo folderu użytkownika systemu Windows:

    -NoProfile -WindowStyle Hidden -ExecutionPolicy RemoteSigned -File "C:\Users\YourName\Documents\Restart-App.ps1"

    RemoteSignedDotyczy tylko tego procesu programu PowerShell i nie zmienia zasad obowiązujących na całym komputerze. Zasady organizacji mogą nadal blokować skrypty. Zapoznaj się z przewodnikiem firmy Microsoft dotyczącym zasad wykonywania programu PowerShell .

    Okno dialogowe Nowa akcja harmonogramu zadań z programem powershell.exe i argumentami Restart-App.ps1 obok okna aplikacji.
    Uruchom zapisany moduł obserwujący za pomocą programu Windows PowerShell.

    W Ustawieniach ustaw opcję „ Jeśli zadanie jest już uruchomione, wówczas obowiązuje następująca reguła : Nie uruchamiaj nowej instancji” . Pozwala to uniknąć uruchomienia drugiego obserwatora w przypadku ręcznego uruchomienia zadania. Kliknij OK , aby zapisać.

    Karta Ustawienia harmonogramu zadań z zaznaczoną opcją Nie uruchamiaj nowego wystąpienia.
    Zezwól na uruchomienie jednej kopii zadania obserwującego.
  5. 5. Przetestuj ponowne uruchomienie i zatrzymaj je, gdy będzie to konieczne

    W bibliotece Harmonogramu zadań wybierz zadanie i kliknij Uruchom . Jeśli aplikacja jest już otwarta, obserwator na nią czeka. Zapisz swoją pracę, zamknij aplikację i odczekaj około minuty – powinna się ponownie otworzyć. Ponieważ każde wyjście z aplikacji powoduje ponowne uruchomienie, jej normalne zamknięcie jest również przydatnym testem.

    Biblioteka harmonogramu zadań pokazująca zadanie ponownego uruchomienia wybrane za pomocą przycisków Uruchom i Wyłącz obok okna aplikacji.
    Uruchom zadanie, aby je przetestować, lub wyłącz je, aby zapobiec automatycznemu ponownemu uruchamianiu się w przyszłości.

    Aby zatrzymać bieżącego obserwatora, kliknij zadanie prawym przyciskiem myszy i wybierz opcję „Zakończ” . Wybierz opcję „Wyłącz” , aby zatrzymać jego uruchamianie po następnym zalogowaniu, lub usuń zadanie po jego wyłączeniu.

Rozwiązywanie problemów

  • Aplikacja się nie otwiera: Sprawdź obie ścieżki i upewnij się, że plik kończy się na .ps1, a nie .ps1.txt. Najpierw uruchom skrypt w oknie programu PowerShell, aby sprawdzić, czy wystąpił błąd. Nie osłabiaj zasad obowiązujących w pracy lub szkole; zapytaj administratora.
  • Aplikacja otwiera się dwukrotnie: Nazwa procesu zazwyczaj odpowiada nazwie pliku wykonywalnego bez .exe. Jeśli jest inna, ustaw $processNamerzeczywistą nazwę procesu. Zatrzymaj zadanie przed edycją skryptu.
  • Aplikacja ciągle się zawiesza: Wyłącz zadanie na czas rozwiązywania problemów z aplikacją. Funkcja monitorowania tylko ją ponownie uruchamia; nie może naprawić brakujących komponentów ani błędów aplikacji, przywrócić niezapisanych dokumentów ani niezawodnie obsługiwać aplikacji ze Sklepu i programów uruchamiających, które są przekazywane do innego procesu.

Zostaw komentarz

Konwertuj zdjęcia na obrazy, szkice i kreskówki za pomocą FotoSketcher

Konwertuj zdjęcia na obrazy, szkice i kreskówki za pomocą FotoSketcher

Zamień zdjęcie w obraz, szkic ołówkiem lub komiks dzięki FotoSketcher Studio. Dowiedz się, jak wybrać efekt, dostosować podgląd i zapisać swoją grafikę.

Szczegółowa analiza i identyfikacja plików audio dzięki Audio Identifier

Szczegółowa analiza i identyfikacja plików audio dzięki Audio Identifier

Dowiedz się, co Audio Identifier ujawnia na temat szybkości transmisji, koderów i tagów, jak działa jego starszy proces pracy i które obecne narzędzia sprawdzają pliki lub identyfikują utwory.

Mój indeks zdjęć: program do organizacji zdjęć typu open source dla systemu Windows

Mój indeks zdjęć: program do organizacji zdjęć typu open source dla systemu Windows

My Photo Index to starszy katalog zdjęć dla systemu Windows, umożliwiający tagowanie, ocenianie i przeglądanie lokalnych obrazów. Zapoznaj się z udokumentowanymi funkcjami, ograniczeniami zgodności i aktualizowaną alternatywą.

Zmień atrybuty plików i folderów, daty i godziny za pomocą narzędzia Attribute Changer

Zmień atrybuty plików i folderów, daty i godziny za pomocą narzędzia Attribute Changer

Dowiedz się, jak używać narzędzia Attribute Changer do edytowania atrybutów plików systemu Windows i znaczników czasu, aktualizowania dat zdjęć JPEG EXIF ​​i bezpiecznego podglądu zmian wsadowych.

Jak ustawić inną tapetę na każdym monitorze w systemie Windows 10

Jak ustawić inną tapetę na każdym monitorze w systemie Windows 10

Ustaw osobną tapetę dla każdego monitora systemu Windows 10, zidentyfikuj wyświetlacze, dostosuj dopasowanie obrazu i rozwiąż problemy z brakującymi opcjami monitora.

pViewer: Minimalistyczna przeglądarka obrazów i czytnik mangi i komiksów

pViewer: Minimalistyczna przeglądarka obrazów i czytnik mangi i komiksów

Dowiedz się, do czego służy pViewer, jak działają tryby zdjęć i komiksów, którą edycję systemu Windows pobrać i czym różnią się wersje starsza i przepisana.

NeoDownloader: ustawianie parametrów i zbiorcze pobieranie obrazów ze stron internetowych

NeoDownloader: ustawianie parametrów i zbiorcze pobieranie obrazów ze stron internetowych

Dowiedz się, jak utworzyć projekt NeoDownloader, wybrać zakres indeksowania, ustawić filtry obrazów i miejsce docelowe oraz przeglądać pliki do pobrania w partiach.

Jak przełączyć się na następną tapetę pulpitu za pomocą klawisza skrótu w systemach Windows 7 i 8

Jak przełączyć się na następną tapetę pulpitu za pomocą klawisza skrótu w systemach Windows 7 i 8

Skonfiguruj pokaz slajdów w systemie Windows 7 lub 8, utwórz krótki skrót VBScript i przypisz klawisz skrótu, aby przejść do następnej tapety.

XnConvert: stosuj efekty i konwertuj formaty obrazów partiami

XnConvert: stosuj efekty i konwertuj formaty obrazów partiami

Użyj XnConvert do stosowania efektów, zmiany rozmiaru zdjęć i konwersji formatów obrazów w partiach. Wybierz ustawienia wyjściowe, wyświetl podgląd edycji i chroń swoje oryginały.

PickMeApp: Przenieś programy Windows z zapisanymi ustawieniami

PickMeApp: Przenieś programy Windows z zapisanymi ustawieniami

Przenieś zainstalowane aplikacje systemu Windows na inny komputer za pomocą aplikacji PickMeApp. Dowiedz się, jak działają pakiety TAP, jak przechwycić ustawienia i co może nie zostać przeniesione.