¿Por qué alt + F4 no cierra cmd?


25

En Windows, alt+ F4no cierra cmd (como en: WindowsKey+ R, cmd, Enter)

¿Qué tan diferente es la ventana de comandos de una ventana normal?


Existen algunos programas de manejo de teclas de acceso directo de terceros. Algunos deberían poder interceptar Alt-F4 solo para las ventanas de símbolo del sistema relevantes y utilizar un apagado alternativo (por ejemplo, escribir "salir", o hacer clic en el botón de cerrar, o usar la opción "cerrar" del menú del sistema). Obviamente, debe ser consciente de la posible desventaja (vea la respuesta de Jeff). Lo siento, no puedo hacer una recomendación.
— Steve314


puedes usar Alt+Space-> Cpara cerrarlo.
— Bor691

Respuestas:


19

La ventana de comandos usa esas combinaciones de teclas para diversas aplicaciones dentro de la ventana de emulación de DOS. Si Alt-F4 cierra la ventana, puede ser imposible usar ciertas utilidades. Si desea un teclado solo arregle, simplemente escriba exitpara salir.


¿Qué ciertas utilidades? Alt-F4 cierra casi todas las ventanas en sistemas NT, entonces ¿por qué el símbolo del sistema es una excepción?
— Peeyush

1
Aplicaciones antes de Windows NT en DOS. Recuerdo un juego en el que Alt + F4 sacó el menú para guardar un juego (Wing Commander Armada, creo). Como está diseñado para emular (o mostrar) DOS, debe aceptar esta combinación de teclas y no cerrar para que estas aplicaciones puedan recibir el comando.
— Jeff F.

oh ... Está bien ... Entonces, Microsoft debe seguir usando esa combinación para algunas funciones, de lo contrario ya deben haber brindado soporte.
— Peeyush

15

Por otro lado, si está buscando que Alt+ F4cierre la ventana de la consola, puede usar el siguiente script de AutoHotkey :

#IfWinActive, ahk_class ConsoleWindowClass
    !F4::WinClose, A

#IfWinActive

6

Alt+ F4envía el programa con foco al WM_CLOSEmensaje .

Entonces, el cmdprograma está configurado intencionalmente para ignorar los WM_CLOSEmensajes, o posiblemente no procesa ningún mensaje en absoluto.


Esto no se aplica por completo a las ventanas de la consola Win32: son propiedad de conhost(antes csrss) y las aplicaciones de la consola lo manejan de manera diferente.
— Grawity

@grawity, debidamente anotado, gracias. Pero parece que ese podría ser el comienzo de la respuesta real a la pregunta.
— DMA57361

@grawity: pensé que dentro de Windows, todavía había un mensaje WM_CLOSE manejado como parte del programa de consola. Sin embargo, no es que haga mucha diferencia: esta es una respuesta para los programadores que trabajan en la fuente de cmd.exe, no para los usuarios curiosos sobre la lógica del diseño.
— Steve314

1
Como puede ver con la respuesta de iglvzx, las consolas se cierran en respuesta a WM_CLOSE.
— Synetech
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.