Saltar al contenido principal

Configuración del Programador de tareas de Windows

El Programador de tareas es una utilidad integrada de Windows que le permite ejecutar automáticamente programas o scripts de forma programada o cuando se dan condiciones específicas.

Passwork versión 7 y superiores tiene un script especial responsable de ejecutar las tareas en segundo plano:

php .\bin\console tasks:run

Puede ejecutarse manualmente o configurarse para ejecutarse de forma programada utilizando el Programador de tareas de Windows.

Recomendamos verificar primero el funcionamiento del script en modo manual. Para ello, realice las siguientes acciones en PowerShell:

cd C:\inetpub\wwwroot\passwork
php .\bin\console tasks:run
peligro

Si el error indica que falta la utilidad php.exe, que ejecuta la tarea en segundo plano, el directorio que contiene PHP debe añadirse a la variable de entorno PATH.

Verifique C:\inetpub\wwwroot\passwork\files\logs\tasks\ en busca de errores.

tip

Asegúrese de que el usuario bajo cuya cuenta se ejecuta el script tenga permisos de escritura.

Configuración del Programador de tareas

Abra PowerShell como Administrador:

  • Haga clic derecho en el icono de Inicio en la esquina inferior izquierda de la pantalla;
  • Seleccione Windows PowerShell (Administrator) en el menú contextual.

Cree una tarea en el Programador de tareas para ejecutar el script:

$action    = New-ScheduledTaskAction -Execute 'powershell.exe' `
-Argument 'php .\bin\console tasks:run' `
-WorkingDirectory 'C:\inetpub\wwwroot\passwork'

$trigger = New-ScheduledTaskTrigger -Once -At (Get-Date) `
-RepetitionInterval (New-TimeSpan -Minutes 1)

$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries `
-StartWhenAvailable -Hidden -Priority 5

$principal = New-ScheduledTaskPrincipal -UserId 'SYSTEM' `
-LogonType ServiceAccount -RunLevel Highest

Register-ScheduledTask -TaskName 'passwork_task' -Action $action `
-Trigger $trigger -Settings $settings -Principal $principal -Force

Verificación y solución de errores

Abra Passwork e inicie sesión como Administrador/Owner, luego vaya a la pestaña Tareas en segundo plano.

Si se configuró correctamente, se mostrará un mensaje indicando que el programador está configurado:

Searching password by browser extension

Si ve un mensaje indicando que el programador no está configurado, los errores de ejecución se encuentran en C:\inetpub\wwwroot\passwork\files\logs\tasks\