OutputType establecido en WinExe para aplicaciones de WPF y WinForms
OutputType
se establece de forma automática en WinExe
para aplicaciones de Windows Presentation Foundation (WPF) y Windows Forms. Cuando OutputType
se establece en WinExe
, no se abre una ventana de la consola al ejecutar la aplicación.
Descripción del cambio
En versiones anteriores del SDK de .NET, se usa el valor especificado para OutputType
en el archivo del proyecto. Por ejemplo:
<PropertyGroup>
<OutputType>Exe</OutputType>
</PropertyGroup>
A partir de la versión 5.0.100 del SDK de .NET, cuando OutputType
se establece en Exe
, se cambia de forma automática a WinExe
para las aplicaciones WPF y Windows Forms que tienen como destino cualquier versión del marco, incluido .NET Framework.
<PropertyGroup>
<OutputType>WinExe</OutputType>
</PropertyGroup>
Si no se especifica OutputType
en el archivo del proyecto, se usa Library
como valor predeterminado y ese valor no cambia.
Motivo del cambio
Se supone que la mayoría de los usuarios no quieren que se abra una ventana de consola cuando se ejecuta una aplicación de WPF o Windows Forms. Además, ahora que estos tipos de aplicación usan el SDK de .NET en lugar del SDK de Escritorio de Windows, se establecerá el valor predeterminado correcto. Incluso si se agrega compatibilidad para seleccionar iOS y Android como destino, será más fácil seleccionar varias plataformas de destino si todas usan el mismo tipo de salida.
Versión introducida
SDK 5.0.100 de .NET
Acción recomendada
No es necesario que realice ninguna acción. Pero si quiere revertir al comportamiento anterior, establezca la propiedad DisableWinExeOutputInference
en true
en el archivo del proyecto.
<DisableWinExeOutputInference>true</DisableWinExeOutputInference>
API afectadas
No detectable a través del análisis de la API.