vbs script remotamente reinicio reinicie reiniciar que por para crear con computador bat archivo apagar windows batch-file command-line restart shutdown

windows - script - crear un archivo que reinicie la pc



¿Cómo apago, reinicio o cierro la sesión de Windows a través de un archivo bat? (9)

Cuando se remotea a una máquina (el objetivo es Windows XP de todos modos, no estoy seguro acerca del objetivo de Windows Vista), aunque el apagado en el menú de inicio es reemplazado por Desconectar sesión o algo así, debería haber uno llamado ''Seguridad de Windows'' que también lo mismo que Ctrl + Alt + Fin según lo señalado por Owen.

He estado usando Remote Desktop Connection para entrar a una estación de trabajo. Pero en este entorno, no puedo usar las opciones de energía en el menú Inicio. Necesito una forma alternativa de apagar o reiniciar.

¿Cómo controlo el estado de energía de mi computadora a través de la línea de comando?


Escribiría esto en el Notepad de Notepad o WordPad para un comando de cierre de sesión básico:

@echo off shutdown -l

Básicamente, es lo mismo que hacer clic en inicio y cierre de sesión manualmente, pero es un poco más rápido si tiene el archivo por lotes listo.


Llego tarde a la fiesta, pero aún no veo esta respuesta. Cuando no quiera usar un archivo por lotes o escriba el comando. Solo puede establecer el foco en el escritorio y luego usar Alt + F4 .

Windows le preguntará qué desea hacer, seleccione apagar o reiniciar.

Para capturas de pantalla e incluso un video, consulte: https://tinkertry.com/how-to-shutdown-or-restart-windows-over-rdp


Nadie ha mencionado la opción -m para el apagado remoto:

shutdown -r -f -m //machinename

También:

  • El parámetro -r provoca un reinicio (que suele ser lo que desea en una máquina remota, ya que iniciarlo físicamente puede ser difícil).
  • La opción de parámetro -f fuerza el reinicio.
  • Debe tener los privilegios adecuados para apagar la máquina remota, por supuesto.

Otro pequeño consejo: cuando voy por la ruta del archivo por lotes, me gusta poder abortarlo en caso de que lo ejecute accidentalmente. Por lo tanto, el archivo por lotes invoca el cierre pero luego lo deja en el símbolo del sistema.

@echo off echo Shutting down in 10 seconds. Please type "shutdown /a" to abort. cmd.exe /K shutdown /f /t 10 /r

Además, dado que está en un temporizador, obtienes la misma emoción que cuando cazabas en The Oregon Trail .


Probablemente esté al tanto de esto, pero por si acaso: es mucho más fácil simplemente teclear shutdown -r (o el comando que desee) en el cuadro "Ejecutar" y presione Enter.

Guarda archivos de lotes por todas partes.


Respuesta original: octubre de 2008.

También tienes todos los " rundll32.exe shell32.dll " serie:

(ver actualización abajo)

  • rundll32.exe user.exe,**ExitWindows** [ rundll32.exe user.exe,**ExitWindows** rápido de Windows]
  • rundll32.exe user.exe,**ExitWindowsExec** [Reiniciar Windows]

    rundll32.exe shell32.dll,SHExitWindowsEx n

donde n significa:

  • 0 - LOGOFF
  • 1 - SHUTDOWN
  • 2 - REBOOT
  • 4 - FORCE
  • 8 - POWEROFF

(se puede combinar -> 6 = 2 + 4 FORCE REBOOT )

Actualización de abril de 2015 (6+ años después):

1800 INFORMACIÓN amablemente señala en los comentarios :

No utilice rundll32.exe para este propósito. Se espera que la función que haya pasado en la línea de comandos tenga una firma de método muy específica, no coincide con la firma de método de ExitWindows .

Raymond CHEN escribió:

La firma de función requerida para las funciones llamadas por rundll32.exe es:

void CALLBACK ExitWindowsEx(HWND hwnd, HINSTANCE hinst, LPSTR pszCmdLine, int nCmdShow);

Eso no ha impedido que las personas utilicen rundll32 para llamar a funciones aleatorias que no fueron diseñadas para ser llamadas por rundll32 , como user32 LockWorkStation o user32 ExitWindowsEx .

(oops)

La firma de la función real para ExitWindowsEx es:

BOOL WINAPI ExitWindowsEx(UINT uFlags, DWORD dwReserved);

Y para que quede claro:

Rundll32 es un Rundll32 de Windows 95 y ha quedado en desuso desde al menos Windows Vista porque viola muchas de las pautas de ingeniería modernas.


Si está en una máquina remota, es posible que también desee agregar la opción -f para forzar el reinicio. De lo contrario, su sesión puede cerrarse y una aplicación obstinada puede bloquear el sistema.

Uso esto cuando quiero forzar un reinicio inmediato:

shutdown -t 0 -r -f

Para una opción más amigable de "dales un poco de tiempo", puedes usar esto:

shutdown -t 30 -r

Como puede ver en los comentarios, el -f está implícito en el tiempo de espera.

Brutus 2006 es una utilidad que proporciona una GUI para estas opciones.


Las formas más comunes de usar el comando shutdown son:

  • shutdown -s - Se apaga.
  • shutdown -r - Reinicia.
  • shutdown -l - Finaliza la sesión.
  • shutdown -h - hibernaciones.

    Nota: hay un error común en el que los usuarios piensan que -h significa "ayuda" (lo que hace para todos los demás programas de línea de comandos ... excepto shutdown.exe , donde significa "hibernación"). Luego ejecutan shutdown -h y apagan accidentalmente sus computadoras. Cuidado con eso.

  • shutdown -i - "Modo interactivo". En lugar de realizar una acción, muestra un diálogo de GUI.

  • shutdown -a : anula un comando de apagado anterior.

Los comandos anteriores se pueden combinar con estas opciones adicionales:

  • -f - Obliga a los programas a salir. Evita que el proceso de cierre se atasque.
  • -t <seconds> : establece el tiempo hasta el apagado. Use -t 0 para apagar inmediatamente.
  • -c <message> : agrega un mensaje de apagado. El mensaje terminará en el registro de eventos.
  • -y : fuerza un "sí" a todas las consultas de apagado.

    Nota: Esta opción no está documentada en ninguna documentación oficial. Fue descubierto por estos usuarios de .

Quiero asegurarme de que algunas otras respuestas realmente buenas también se mencionan junto con esta. Aquí no están en ningún orden particular.