Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
À compter des applications qui ciblent .NET Framework 4.6.2, plusieurs modifications ont été apportées pour prendre en charge les chemins précédemment non pris en charge (tant en termes de longueur que de format). En particulier, les vérifications de bonne syntaxe de séparateur de lecteur (le signe deux-points) ont été rendues plus correctes.
Répercussion
Ces modifications bloquent certains chemins d’URI que les méthodes Path.GetDirectoryName et Path.GetPathRoot prenaient précédemment en charge.
Atténuation
Pour contourner le problème d’un chemin d’accès précédemment acceptable qui n’est plus pris en charge par les méthodes Path.GetDirectoryName et Path.GetPathRoot, vous pouvez effectuer les opérations suivantes :
Supprimez manuellement le schéma d’une URL. Par exemple, supprimez
file://d’une URL.Transmettez l’URI à un Uri constructeur et récupérez la valeur de la Uri.LocalPath propriété.
Refusez la nouvelle normalisation de chemin d’accès en affectant à
Switch.System.IO.UseLegacyPathHandlingAppContext la valeurtrue.<runtime> <AppContextSwitchOverrides value="Switch.System.IO.UseLegacyPathHandling=true" /> </runtime>