Partager via


PathTooLongException Classe

Définition

Exception qui est levée quand un chemin d’accès ou un nom de fichier complet dépasse la longueur maximale définie par le système.

public ref class PathTooLongException : System::IO::IOException
public class PathTooLongException : System.IO.IOException
[System.Serializable]
public class PathTooLongException : System.IO.IOException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class PathTooLongException : System.IO.IOException
type PathTooLongException = class
    inherit IOException
[<System.Serializable>]
type PathTooLongException = class
    inherit IOException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type PathTooLongException = class
    inherit IOException
Public Class PathTooLongException
Inherits IOException
Héritage
PathTooLongException
Héritage
Attributs

Remarques

Dans les applications qui s’exécutent sous des versions du .NET Framework antérieures à .NET Framework 4.6.2, les chemins d’accès complets ne doivent pas dépasser 260 caractères pour maintenir la compatibilité avec les systèmes d’exploitation Windows. Tout chemin d’accès supérieur à 260 caractères lève automatiquement un PathTooLongException. Pour plus d’informations sur cette restriction, consultez l’entrée Chemins d’accès longs dans .NET dans le blog de l’équipe BCL.

Notes

Cette exception n’est pas incluse dans .NET pour les applications du Windows Store ou la bibliothèque de classes portable, mais elle est levée par certains membres qui le sont. Pour intercepter l’exception dans ce cas, écrivez une catch instruction qui gère un IOException à la place.

À compter des applications exécutées sous .NET Framework 4.6.2, le .NET Framework prend en charge les chemins d’accès longs au-delà de 260 (ou MAX_PATH) caractères. Les conditions dans lesquelles une PathTooLongException exception est levée dépendent de la version du .NET Framework ciblée par une application :

Applications qui ciblent .NET Framework 4.6.2 et versions ultérieures Les chemins longs sont pris en charge par défaut. Le runtime lève un PathTooLongException dans les conditions suivantes :

  • Le système d’exploitation renvoie COR_E_PATHTOOLONG ou son équivalent.

  • La longueur du chemin dépasse Int16.MaxValue (32 767) caractères.

Applications qui ciblent .NET Framework 4.6.1 et versions antérieures Les chemins longs sont désactivés par défaut et le comportement hérité est conservé. Le runtime lève un PathTooLongException chaque fois qu’un chemin dépasse 260 caractères.

Si cela n’est pas souhaitable, les applications qui ciblent .NET Framework 4.6.1 et versions antérieures, mais qui s’exécutent sous .NET Framework 4.6.2 peuvent activer la prise en charge des chemins longs en incluant le paramètre suivant dans l’élément <runtime> du fichier de configuration de l’application :

<runtime>
   <AppContextSwitchOverrides value="Switch.System.IO.UseLegacyPathHandling=false" />
</runtime>

PathTooLongException utilise le HRESULT COR_E_PATHTOOLONG, qui a la valeur 0x800700CE.

Constructeurs

PathTooLongException()

Initialise une nouvelle instance de la classe PathTooLongException dont le HRESULT est égal à COR_E_PATHTOOLONG.

PathTooLongException(SerializationInfo, StreamingContext)
Obsolète.

Initialise une nouvelle instance de la classe PathTooLongException avec les informations de contexte et de sérialisation spécifiées.

PathTooLongException(String)

Initialise une nouvelle instance de la classe PathTooLongException dont la chaîne de message correspond à message et HRESULT équivaut à COR_E_PATHTOOLONG.

PathTooLongException(String, Exception)

Initialise une nouvelle instance de la classe PathTooLongException avec un message d'erreur spécifié et une référence à l'exception interne ayant provoqué cette exception.

Propriétés

Data

Obtient une collection de paires clé/valeur qui fournissent des informations définies par l'utilisateur supplémentaires sur l'exception.

(Hérité de Exception)
HelpLink

Obtient ou définit un lien vers le fichier d'aide associé à cette exception.

(Hérité de Exception)
HResult

Obtient ou définit HRESULT, valeur numérique codée qui est assignée à une exception spécifique.

(Hérité de Exception)
InnerException

Obtient l'instance Exception qui a provoqué l'exception actuelle.

(Hérité de Exception)
Message

Obtient un message qui décrit l'exception active.

(Hérité de Exception)
Source

Obtient ou définit le nom de l'application ou de l'objet qui est à l'origine de l'erreur.

(Hérité de Exception)
StackTrace

Obtient une représentation sous forme de chaîne des frames immédiats sur la pile des appels.

(Hérité de Exception)
TargetSite

Obtient la méthode qui lève l'exception actuelle.

(Hérité de Exception)

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetBaseException()

En cas de substitution dans une classe dérivée, retourne la Exception qui est à l'origine d'une ou de plusieurs exceptions ultérieures.

(Hérité de Exception)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsolète.

En cas de substitution dans une classe dérivée, définit SerializationInfo avec des informations sur l'exception.

(Hérité de Exception)
GetType()

Obtient le type au moment de l'exécution de l'instance actuelle.

(Hérité de Exception)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Crée et retourne une chaîne représentant l'exception actuelle.

(Hérité de Exception)

Événements

SerializeObjectState
Obsolète.

Se produit quand une exception est sérialisée pour créer un objet d'état d'exception qui contient des données sérialisées concernant l'exception.

(Hérité de Exception)

S’applique à

Voir aussi