Partager via


OutputType défini sur WinExe pour les applications WPF et WinForms

OutputType est automatiquement défini WinExe pour les applications Windows Presentation Foundation (WPF) et Windows Forms. Lorsqu’un OutputType est défini sur un WinExe, une fenêtre de console ne s’ouvre pas lorsque l’application est exécutée.

Description de la modification

Dans les versions précédentes du Kit de développement logiciel (SDK) .NET, la valeur spécifiée OutputType dans le fichier projet est utilisée. Par exemple:

<PropertyGroup>
  <OutputType>Exe</OutputType>
</PropertyGroup>

À partir de la version 5.0.100 du Kit de développement logiciel (SDK) .NET, quand OutputType est définie à Exe, elle est automatiquement modifiée en WinExe pour les applications WPF et Windows Forms qui ciblent n’importe quelle version du framework, y compris le framework .NET.

<PropertyGroup>
  <OutputType>WinExe</OutputType>
</PropertyGroup>

S’il OutputType n’est pas spécifié dans le fichier projet, il est défini par défaut Library et cette valeur ne change pas.

Raison de la modification

Il est supposé que la plupart des utilisateurs ne veulent pas qu’une fenêtre de console s’ouvre lorsqu’une application WPF ou Windows Forms est exécutée. De plus, maintenant que ces types d’applications utilisent le Kit de développement logiciel (SDK) .NET au lieu du Kit de développement logiciel (SDK) Windows Desktop, la valeur par défaut correcte sera définie. En outre, lorsque la prise en charge du ciblage d’iOS et Android est ajoutée, il sera plus facile de multi-cibler entre plusieurs plateformes s’ils utilisent tous le même type de sortie.

Version introduite

KIT SDK .NET 5.0.100

Aucune action n’est requise de votre part. Toutefois, si vous souhaitez revenir à l’ancien comportement, définissez la propriété à DisableWinExeOutputInference dans votre fichier projet.

<DisableWinExeOutputInference>true</DisableWinExeOutputInference>

API affectées

Non détectable par le biais d’une analyse d’API.