Zmírnění: Kontroly dvojtečky cesty
Počínaje aplikacemi, které cílí na rozhraní .NET Framework 4.6.2, bylo provedeno několik změn, které podporovaly dříve nepodporované cesty (jak z hlediska délky, tak formátu). Konkrétně byly provedeny kontroly správné syntaxe oddělovače jednotek (dvojtečka).
Dopad
Tyto změny blokují některé cesty identifikátoru Path.GetDirectoryName URI a Path.GetPathRoot metody, které byly dříve podporovány.
Zmírnění
Chcete-li vyřešit problém dříve přijatelné cesty, která již není podporována Path.GetDirectoryName metodami, Path.GetPathRoot můžete provést následující:
Ručně odeberte schéma z adresy URL. Například odeberte
file://
z adresy URL.Předejte identifikátor URI konstruktoru Uri a načtěte hodnotu Uri.LocalPath vlastnosti.
Odhlaste se z nové normalizace cesty nastavením
Switch.System.IO.UseLegacyPathHandling
AppContext přepínače natrue
.<runtime> <AppContextSwitchOverrides value="Switch.System.IO.UseLegacyPathHandling=true" /> </runtime>