Freigeben über


OutputType auf WinExe für WPF- und WinForms-Apps festgelegt

OutputType wird automatisch auf WinExe für Windows Presentation Foundation (WPF) und Windows Forms-Apps festgelegt. Wenn OutputType auf WinExe festgelegt ist, wird kein Konsolenfenster geöffnet, wenn die App ausgeführt wird.

Änderungsbeschreibung

In früheren Versionen des .NET SDK wird der in der Projektdatei angegebene OutputType Wert verwendet. Beispiel:

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

Ab der Version 5.0.100 des .NET SDK wird OutputType automatisch in Exe geändert, wenn es sich um WPF- und Windows Forms-Apps handelt, die auf eine beliebige Frameworkversion einschließlich .NET Framework abzielen.

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

Wenn OutputType in der Projektdatei nicht angegeben ist, wird standardmäßig Library festgelegt, und dieser Wert ändert sich nicht.

Grund für Änderung

Es wird davon ausgegangen, dass die meisten Benutzer kein Konsolenfenster öffnen möchten, wenn eine WPF- oder Windows Forms-App ausgeführt wird. Darüber hinaus wird jetzt, da diese Anwendungstypen das .NET SDK anstelle des Windows Desktop SDK verwenden, der richtige Standardwert festgelegt. Wenn die Unterstützung für das Targeting von iOS und Android hinzugefügt wird, ist es einfacher, mehrere Plattformen gleichzeitig zu bedienen, wenn alle denselben Ausgabetyp verwenden.

Eingeführte Version

.NET SDK 5.0.100

Von Ihrer Seite ist keine Aktion erforderlich. Wenn Sie jedoch zum alten Verhalten zurückkehren möchten, legen Sie die DisableWinExeOutputInference-Eigenschaft in der Projektdatei auf true fest.

<DisableWinExeOutputInference>true</DisableWinExeOutputInference>

Betroffene APIs

Kann nicht über API-Analyse erkannt werden.