Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
Esta característica requiere Windows 11 24H2 (compilación 26100) o posterior.
La mayoría de las aplicaciones de Windows son del tipo IMAGE_SUBSYSTEM_WINDOWS_GUI o IMAGE_SUBSYSTEM_WINDOWS_CUI . La primera es una aplicación gráfica típica, con ventanas, mientras que esta última es lo que se suele denominar aplicación de consola o terminal. Al ejecutar una aplicación marcada como IMAGE_SUBSYSTEM_WINDOWS_CUI se le asignará una consola, a menos que se ejecute dentro de una sesión de consola existente. Además, la ejecución de esta aplicación dentro de un shell como CMD o PowerShell se bloqueará hasta que la aplicación haya terminado de ejecutarse. Ninguno de estos elementos es cierto para las aplicaciones de IMAGE_SUBSYSTEM_WINDOWS_GUI . No se le asignará una consola ni se bloqueará la ejecución dentro de un shell.
Ahora, ¿qué ocurre si desea escribir una aplicación que parezca una aplicación gráfica cuando se ejecuta desde el Explorador, pero también puede escribir la salida de depuración en la consola, si se ejecuta dentro de una sesión de consola existente? Para ello, compile la aplicación como un IMAGE_SUBSYSTEM_WINDOWS_CUI uno (por ejemplo, con /SUBSYSTEM:CONSOLE en MSVC) y agregue el siguiente manifiesto de aplicación:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<application>
<windowsSettings>
<consoleAllocationPolicy xmlns="http://schemas.microsoft.com/SMI/2024/WindowsSettings">detached</consoleAllocationPolicy>
</windowsSettings>
</application>
</assembly>
El tipo IMAGE_SUBSYSTEM_WINDOWS_CUI informa a los shells que deben bloquearse hasta que su aplicación haya terminado de ejecutarse, mientras que el manifiesto de la aplicación informa al sistema operativo que omita la asignación de una consola.
Requisitos
| Cliente mínimo compatible | Windows 11 24H2 (compilación 26100) [solo aplicaciones de escritorio] |
| Servidor mínimo compatible | Windows Server 2025 (compilación 26100) |