Ejecutando el script de Python cuando el usuario desbloquea la máquina de Windows

1

Tengo un script en Python, que quiero ejecutar, cuando el usuario desbloquea la máquina es decir; Cuando los usuarios presionan Cntl-Alt-Delete e ingresan nombre de usuario y contraseña e inician sesión.

Cómo puedo hacer esto ? . ¿Hay algún valor de registro, puedo agregar que

pythonw.exe C: \ myscript.py a eso, para que se ejecute myscript.py cada vez, ¿el usuario desbloquea la máquina?

Jijoy
fuente

Respuestas:

1

Puede usar el Programador de tareas de Windows (Vista y superior) o el panel de control Tareas programadas (WinXP) para crear una tarea programada que active "Al iniciar sesión" o "Desbloqueo de la estación de trabajo". Creo que tal desencadenante hará que la tarea se ejecute en el escenario que describe.


fuente
No Acabo de intentarlo y no salió corriendo.
2
También hay un disparador "En la estación de trabajo desbloquear". Dale una oportunidad a eso.
1
en windows xp?
2
No, creo que el "Desbloqueo de la estación de trabajo" puede estar limitado a Vista y superior. Puede haber una manera de lograr resultados similares en xp, pero probablemente no sea tan sencillo. Es posible que desee agregar "XP" a su pregunta original (o las etiquetas) si "XP" es la plataforma requerida. Por cierto, acabo de verificar que el "Desbloqueo de la estación de trabajo" funciona como se esperaba en Vista al enviarlo a mí mismo.
0

Para Windows XP, use PyWin32 para:

  • win32gui.CreateWindow() una ventana invisible
  • llamada win32ts.WTSRegisterSessionNotification()
  • escuchar WM_WTSSESSION_CHANGE mensajes de ventana que tienen wparam == WTS_SESSION_UNLOCK
    • lparam será el ID de sesión
  • Una implementación de ejemplo: wtsmonitor.pyw

Si quieres que funcione el script múltiple usuarios, convertirlo en un Servicio ( win32serviceutil es útil para esto); ver wtsmonitor-svc.py en la dirección anterior.

grawity
fuente
0

deberías revisar Schtasks.exe

Permite a un administrador crear, eliminar, consultar, cambiar, ejecutar y finalizar tareas programadas en un equipo local o remoto. La ejecución de Schtasks.exe sin argumentos muestra el estado y el tiempo de ejecución siguiente para cada tarea registrada.

Tom Wijsman
fuente
puede ejecutarse solo en el inicio de sesión y no en mientras el usuario desbloquea la máquina.
Chequea aquí technet.microsoft.com/en-us/library/bb490996.aspx en el parámetro "/ sc" hay un valor ONLOGON que, siguiendo su descripción, debería hacer lo que necesita