ProcessStartInfo.WindowStyle gehonoreerd wanneer UseShellExecute onwaar is
WindowStyle Voorheen werd alleen gehonoreerd toen true
UseShellExecute . Deze wijziging eert WindowStyle zelfs wanneer UseShellExecute .false
Vorig gedrag
Vóór deze wijziging is het proces WindowStyle met de volgende code gestart alsof het niet was opgegeven, omdat UseShellExecute = false
. Dat wil gezegd, het venster was zichtbaar, niet verborgen.
using System.Diagnostics;
ProcessStartInfo startInfo = new()
{
FileName = @"C:\Windows\System32\notepad.exe",
UseShellExecute = false,
WindowStyle = ProcessWindowStyle.Hidden
};
var process = Process.Start(startInfo);
process!.WaitForExit();
Nieuw gedrag
Vanaf .NET 8 wordt WindowStyle zelfs voldaan aan processen die zijn gestart.UseShellExecute = false
De code uit de sectie Vorige gedrag start het proces met het venster verborgen.
Versie geïntroduceerd
.NET 8 Preview 6
Type wijziging die fouten veroorzaken
Deze wijziging is een gedragswijziging.
Reden voor wijziging
Voor sommige scenario's moet de stijl van het venster van het spawedproces worden gewijzigd (met name om het te verbergen).
Aanbevolen actie
Deze wijziging is van invloed op code die is opgegeven WindowStyle , zelfs wanneer deze niet correct werd ondersteund. De volgorde van het activeren van gebeurtenissen in WPF wordt bijvoorbeeld gewijzigd. Als u de wijziging die fouten veroorzaken wilt beperken, moet u niet opgeven WindowStyle
in ProcessStartInfo.