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ć.

Samuel Liew
źródło
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

Samuel Liew
źródło
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/

Jay Sidri
źródło
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