Windows: ¿Cómo mostrar una ventana de alerta / confirmación sin bloqueo?
-
20-08-2019 - |
Pregunta
Quiero realizar un cuadro de confirmación / alerta simple que se puede llamar usando un script por lotes de Windows XP / Vista por CLI.
El cuadro de alerta estándar parece estar bloqueándose, lo que significa que todo el script por lotes se detendrá en el momento de la llamada de la ventana de alerta, que NO es lo que quiero.
Si necesita ser codificado, proporcione un ejemplo o documentación. El lenguaje puede ser cualquier cosa que sea compilable sin requerir una máquina virtual en el medio.
Solución
start MessageBox.vbs
... donde MessageBox.vbs
contiene una llamada a la función MsgBox.
Otros consejos
Puede usar la herramienta msg
:
Send a message to a user.
MSG {username | sessionname | sessionid | @filename | *}
[/SERVER:servername] [/TIME:seconds] [/V] [/W] [message]
username Identifies the specified username.
sessionname The name of the session.
sessionid The ID of the session.
@filename Identifies a file containing a list of usernames,
sessionnames, and sessionids to send the message to.
* Send message to all sessions on specified server.
/SERVER:servername server to contact (default is current).
/TIME:seconds Time delay to wait for receiver to acknowledge msg.
/V Display information about actions being performed.
/W Wait for response from user, useful with /V.
message Message to send. If none specified, prompts for it
or reads from stdin.
La llamada
msg * Some text
no bloquea. También tiene la buena capacidad de cerrar el cuadro de mensaje nuevamente después de un período de tiempo establecido si es necesario.
En una nota al margen, sin embargo, realmente no deberías usar esas cosas. Los monólogos (como los cuadros de mensaje con exactamente un botón Aceptar) tienen una eficiencia de información de 0 & Nbsp;% (cf. Jef Raskin: La interfaz humana . Sección 4 & # 8211; 3: Medición de la eficiencia de la interfaz o Aza Raskin: Monolog Cuadros y mensajes transparentes o Aza Raskin: Sepa cuándo dejar de diseñar, cuantitativamente ).