Programmi automaatkäivitus Windows Serveris: Task Scheduler

18 Feb 2026 Autor: Laura Zariņa

Kõige töökindlam viis programmi automaatkäivituseks Windows Serveris on tööülesannete ajastaja (Task Scheduler) päästikuga „At startup”: programm käivitub süsteemi laadimisel ka siis, kui keegi ei ole sisse loginud. Töölauda vajavatele rakendustele sobib Startup-kaust või registriharu Run. Vaatame kõik kolm varianti läbi.

Millist viisi valida

Viis Millal käivitub Kas vajab sisselogimist
Task Scheduler (At startup) Süsteemi laadimisel Ei
Task Scheduler (At log on) Sisselogimisel Jah
Startup-kaust Kasutaja sisselogimisel Jah
Registriharu Run Kasutaja sisselogimisel Jah

Ööpäev läbi töötavate teenuste ja taustaprotsesside jaoks kasutage Task Scheduleri valikut „At startup”. Kasutajaliidesega rakenduste jaoks sobib automaatkäivitus sisselogimisel.

1. viis. Tööülesannete ajastaja (soovitatav)

Graafilise liidese kaudu

  1. Avage tööülesannete ajastaja (Task Scheduler)taskschd.msc.
  2. Klõpsake paremal Create Task (mitte Basic Task — nii on rohkem seadeid).
  3. Vahekaardil General andke ülesandele nimi, valige Run whether user is logged on or not ja märkige Run with highest privileges.
  4. Vahekaardil Triggers → New valige At startup.
  5. Vahekaardil Actions → New näidake tee programmini (näiteks C:\apps\myapp.exe).
  6. Klõpsake OK ja sisestage selle konto parool, mille all ülesanne töötab.

PowerShelli kaudu

Sama ülesande saab luua ühe käsuseeriaga:

$action  = New-ScheduledTaskAction -Execute "C:\apps\myapp.exe"
$trigger = New-ScheduledTaskTrigger -AtStartup
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries
Register-ScheduledTask -TaskName "MyAppAutostart" -Action $action -Trigger $trigger -Settings $settings -RunLevel Highest -User "SYSTEM"

Kontrollime, kas ülesanne on loodud:

Get-ScheduledTask -TaskName "MyAppAutostart"

Käivitame testiks käsitsi:

Start-ScheduledTask -TaskName "MyAppAutostart"

2. viis. Startup-kaust

Programm käivitub konkreetse kasutaja sisselogimisel. Avage automaatkäivituse kaust:

shell:startup

(kõigi kasutajate jaoks — shell:common startup). Pange sinna programmi otsetee. PowerShellis saab otsetee luua programmiliselt:

$startup = [Environment]::GetFolderPath('Startup')
$shell = New-Object -ComObject WScript.Shell
$shortcut = $shell.CreateShortcut("$startup\MyApp.lnk")
$shortcut.TargetPath = "C:\apps\myapp.exe"
$shortcut.Save()

3. viis. Registriharu Run

Väärtus harus Run käivitab programmi kasutaja sisselogimisel:

Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "MyApp" -Value "C:\apps\myapp.exe"

Kõigi kasutajate jaoks kasutage haru HKLM: haru HKCU: asemel.

Korduma kippuvad küsimused

Programm ei käivitu laadimisel — miks?

Kõige sagedamini vajab rakendus interaktiivset töölauda, kuid ülesanne on seadistatud valikuga „Run whether user is logged on or not”. Selliseid graafilisi programme on parem käivitada päästikuga At log on või Startup-kaustast.

Kuidas käivitada programm automaatselt administraatorina?

Lülitage Task Scheduleris sisse Run with highest privileges. Siis käivitub ülesanne kõrgendatud õigustega ilma UAC-i küsimuseta.

Miks on Task Scheduler parem kui Startup-kaust?

Ajastaja oskab käivitada protsesse enne kasutaja sisselogimist, vajalike õigustega, ajakava järgi ja tõrke korral uuesti. Startup-kaust töötab alles pärast süsteemi sisselogimist.

Kuidas programm automaatkäivitusest eemaldada?

Ülesande puhul: Unregister-ScheduledTask -TaskName "MyAppAutostart" -Confirm:$false. Registri puhul: Remove-ItemProperty. Kausta puhul kustutage otsetee kaustast shell:startup.


Vajate serverit, mis hoiab teie teenused ööpäev läbi käigus? Võtke Windows VPS või vaadake VPS-i rendi hinnakirja.

Laura Zariņa