Jak ustawić zaplanowane zadanie systemu Windows, aby uruchamiało się w tle? [Zamknięte]


149

Czy ktoś wie, jak ustawić zaplanowane zadanie do uruchomienia w tle za pomocą Harmonogramu zadań systemu Windows?
Wydaje się, że nie ma żadnej opcji, aby to zrobić.


Tutaj próbowałem skompilować wszystkie możliwe sposoby uruchomienia ukrytego procesu w systemie Windows bez zewnętrznych narzędzi, w tym skrypt, który planuje zadanie.
— npocmaka

@npocmaka - link martwy - prosimy o przesłanie gdzieś jako Q & A / Wiki
— Alex S

1
@AlexS - sprawdź to
— npocmaka

1
Może komuś pomoże: howtogeek.com/tips/…
— współczynnik X

Jeśli korzystasz ze skryptu PowerShell, oto rozwiązanie superuser.com/a/1038142/106079
— BBK

Odpowiedzi:


216

Jak zauważył przez Mattias Nordqvist w komentarzach poniżej, można również wybrać opcję przycisk opcji „Uruchom czy użytkownik jest zalogowany czy nie” . Podczas zapisywania zadania zostaniesz poproszony o podanie hasła użytkownika. Bambams zauważył, że to nie nadałoby uprawnień systemowych do procesu, a także wydaje się ukrywać okno poleceń.


Nie jest to oczywiste rozwiązanie, ale aby zaplanowane zadanie działało w tle, zmień użytkownika uruchamiającego zadanie na „ SYSTEM ”, a na ekranie nic się nie pojawi.

wprowadź opis obrazu tutaj

wprowadź opis obrazu tutaj

wprowadź opis obrazu tutaj


53
Zasadniczo chodzi o to, że »Albo coś widzę na ekranie, albo aplikacja uzyskuje uprawnienia poza administratorem«? Nie brzmi zbyt dobrze ...
— Joey

12
+1 Rozwiązał mój problem, dzięki! Ale dlaczego używane konto użytkownika ma cokolwiek wspólnego z widocznością okna i dlaczego pole wyboru „Ukryte”, które brzmi tak, jakby powinno to robić, nic nie robi?
— Joshua Frank

13
Tak, chociaż to dobra wskazówka, to złe rozwiązanie. Zadanie kończy się uruchomieniem z uprawnieniami systemowymi i może celowo lub nieumyślnie wyrządzić szkodę. Jeśli uzyska dostęp do Internetu, ktoś może przejąć kontrolę nad systemem. Działa z innym profilem użytkownika, więc% USERPROFILE% przeniesie się w inne miejsce. Nie zobaczy twoich dokumentów (chyba że masz twarde ścieżki). Pliki, które tworzy, mogą być dla Ciebie niedostępne (chyba że również przełączysz się na administratora).
— sam

16
Na wypadek, gdyby ktoś inny się z tym spotkał. Znalazłem to rozwiązanie w przypadku awarii serwera, które nie wymaga eskalacji uprawnień. serverfault.com/questions/9038/…
— bronsoja

34
Jest na to inny sposób z innym, prawdopodobnie bardziej akceptowalnym efektem ubocznym. Po prostu zaznacz pole wyboru „Uruchom, niezależnie od tego, czy użytkownik jest zalogowany”. Spowoduje to uruchomienie programu w tle. Musisz jednak podać hasło użytkownika raz po kliknięciu OK.
— Mattias Nordqvist

10

Zakładając, że aplikacja, którą próbujesz uruchomić w tle, jest oparta na interfejsie CLI, możesz spróbować wywołać zaplanowane zadania za pomocą ukrytego startu

Zobacz także: http://www.howtogeek.com/howto/windows/hide-flashing-command-line-and-batch-file-windows-on-startup/


3
Nie ma potrzeby pobierania nowego programu, system Windows jest już wyposażony w jeden. Nazywa sięstart /b
— BlueRaja - Danny Pflughoeft

6
Problem startpolega na tym, że jest to polecenie, a nie program, więc nie można go używać w Harmonogramie zadań.
— Erik Kaplun,

3
cmd.exe /c startzałatwia sprawę dla poleceń, które nie są programami.
— hypersw

25
@hypersw ... co z kolei prowadzi do wiersza polecenia wyświetlającego się, gdy zadanie jest uruchomione. :)
— Camille

3
@hypersw, Cammille ma rację, system nadal tworzy okno konsoli dla cmdprocesu i startpolecenia, więc nadal otrzymujesz okno konsoli, które przynajmniej przez chwilę miga. Po prostu odsuwa problem (i dodaje dodatkowy i niepotrzebny poziom abstrakcji do problemu.
— Synetech
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.