Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Daha önce, WindowStyle yalnızca olduğu zaman UseShellExecute onurlandırıldı true
. Bu değişiklik, olduğunda UseShellExecute bile yerine WindowStyle getirilirfalse
.
Önceki davranış
Bu değişiklik öncesinde, aşağıdaki kod işlemi belirtilmemiş gibi WindowStyle başlattı çünkü UseShellExecute = false
. Yani, pencere görünürdü, gizlenmedi.
using System.Diagnostics;
ProcessStartInfo startInfo = new()
{
FileName = @"C:\Windows\System32\notepad.exe",
UseShellExecute = false,
WindowStyle = ProcessWindowStyle.Hidden
};
var process = Process.Start(startInfo);
process!.WaitForExit();
Yeni davranış
.NET 8'den başlayarak, WindowStyle ile UseShellExecute = false
başlatılan işlemler için bile kabul edilir.
Önceki davranış bölümündeki kod, pencere gizli olarak işlemi başlatır.
Sürüm kullanıma sunulmuştur
.NET 8 Önizleme 6
Hataya neden olan değişikliğin türü
Bu değişiklik davranışsal bir değişikliktir.
Değişiklik nedeni
Bazı senaryolar, oluşturulan işlemin penceresinin stilini değiştirmeyi gerektirir (özellikle bunu gizlemek için).
Önerilen eylem
Bu değişiklik, düzgün desteklenmediğinde bile belirtilen WindowStyle kodu etkiler. Örneğin WPF'nin olay tetikleme sırası artık değiştiriliyor. Hataya neden olan değişikliği azaltmak için içinde ProcessStartInfobelirtmeyinWindowStyle
.