PathTooLongException Klasse

Definition

Die Ausnahme wird ausgelöst, wenn ein Pfad oder vollqualifizierter Dateiname die vom System definierte maximale Länge übersteigt.The exception that is thrown when a path or fully qualified file name is longer than the system-defined maximum length.

public ref class PathTooLongException : System::IO::IOException
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class PathTooLongException : System.IO.IOException
type PathTooLongException = class
    inherit IOException
Public Class PathTooLongException
Inherits IOException
Vererbung
Attribute

Hinweise

Wenn der Code nicht über FileIOPermissionAttribute.PathDiscovery die erforderliche Berechtigung verfügt, kann die Fehlermeldung für diese Ausnahme nur Datei-oder Verzeichnisnamen anstelle von vollständigen Pfaden enthalten.If your code does not have FileIOPermissionAttribute.PathDiscovery permission, the error message for this exception may contain only file or directory names instead of full paths.

In-apps, die unter Versionen des-.NET Framework vor .NET Framework 4.6.2.NET Framework 4.6.2ausgeführt werden, dürfen vollständige Pfade nicht länger als 260 Zeichen sein, damit die Kompatibilität mit Windows-Betriebssystemen gewährleistet ist.In apps that run under versions of the .NET Framework prior to the .NET Framework 4.6.2.NET Framework 4.6.2, full paths must not exceed 260 characters to maintain compatibility with Windows operating systems. Jeder Pfad mit mehr als 260 Zeichen löst automatisch eine PathTooLongExceptionaus.Any path in excess of 260 characters automatically throws a PathTooLongException. Weitere Informationen zu dieser Einschränkung finden Sie im Blogbeitrag Long Path in .net im BCL-Teamblog.For more information about this restriction, see the entry Long Paths in .NET in the BCL Team blog.

Hinweis

Diese Ausnahme ist nicht in .net für Windows Store-Apps oder der portablen Klassenbibliothekenthalten, Sie wird jedoch von einigen Membern ausgelöst, die sind.This exception is not included in .NET for Windows Store apps or the Portable Class Library, but it is thrown by some members that are. Um die Ausnahme in diesem Fall abzufangen, schreiben catch Sie eine-Anweisung IOException , die stattdessen eine verarbeitet.To catch the exception in that case, write a catch statement that handles an IOException instead.

Beginnend mit apps .NET Framework 4.6.2.NET Framework 4.6.2, die unter ausgeführt werden, unterstützt die .NET Framework lange Pfade, die mehr MAX_PATHals 260 (oder) Zeichen umfassen.Starting with apps running under the .NET Framework 4.6.2.NET Framework 4.6.2, the .NET Framework supports long paths in excess of 260 (or MAX_PATH) characters. Die Bedingungen, unter denen PathTooLongException eine-Ausnahme ausgelöst wird, hängen von der Version der .NET Framework ab, die eine App als Ziel hat:The conditions under which a PathTooLongException exception are thrown depend on the version of the .NET Framework that an app targets:

Apps, die .NET Framework 4.6.2.NET Framework 4.6.2 auf und spätere Versionen abzielenApps that target the .NET Framework 4.6.2.NET Framework 4.6.2 and later versions
Lange Pfade werden standardmäßig unterstützt.Long paths are supported by default. Die Laufzeit löst einen PathTooLongException unter den folgenden Bedingungen aus:The runtime throws a PathTooLongException under the following conditions:

  • Das Betriebssystem gibt COR_E_PATHTOOLONG oder einen dazu äquivalenten Wert zurück.The operating system returns COR_E_PATHTOOLONG or its equivalent.

  • Die Länge des Pfads über Int16.MaxValue schreitet (32.767) Zeichen.The length of the path exceeds Int16.MaxValue (32,767) characters.

Apps, die auf .NET Framework 4.6.1.NET Framework 4.6.1 und frühere Versionen abzielenApps that target the .NET Framework 4.6.1.NET Framework 4.6.1 and earlier versions
Lange Pfade sind standardmäßig deaktiviert, und das Legacy Verhalten wird beibehalten.Long paths are disabled by default, and the legacy behavior is maintained. Die Laufzeit löst einen PathTooLongException aus, wenn ein Pfad 260 Zeichen überschreitet.The runtime throws a PathTooLongException whenever a path exceeds 260 characters.

Wenn dies nicht erwünscht ist, .NET Framework 4.6.1.NET Framework 4.6.1 .NET Framework 4.6.2.NET Framework 4.6.2 können apps, die auf und früher abzielen, aber unter ausgeführt werden, Unterstützung für langen Pfad aktivieren, indem Sie die folgende Einstellung in das <Lauf Zeit > Element der Anwendungs Konfigurationsdatei einschließen:If this is undesirable, apps that target the .NET Framework 4.6.1.NET Framework 4.6.1 and earlier but run under the .NET Framework 4.6.2.NET Framework 4.6.2 can enable long path support by including the following setting in the <runtime> element of the application configuration file:

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

PathTooLongExceptionverwendet das HRESULT COR_E_PATHTOOLONG, das den Wert 0x800700CE aufweist.PathTooLongException uses the HRESULT COR_E_PATHTOOLONG, which has the value 0x800700CE.

Konstruktoren

PathTooLongException()

Initialisiert eine neue Instanz der PathTooLongException-Klasse, bei der HRESULT auf COR_E_PATHTOOLONG festgelegt ist.Initializes a new instance of the PathTooLongException class with its HRESULT set to COR_E_PATHTOOLONG.

PathTooLongException(SerializationInfo, StreamingContext)

Initialisiert eine neue Instanz der PathTooLongException-Klasse mit der angegebenen Serialisierung und den angegebenen Kontextinformationen.Initializes a new instance of the PathTooLongException class with the specified serialization and context information.

PathTooLongException(String)

Initialisiert eine neue Instanz der PathTooLongException-Klasse, bei der die Meldungszeichenfolge auf message und HRESULT auf COR_E_PATHTOOLONG festgelegt ist.Initializes a new instance of the PathTooLongException class with its message string set to message and its HRESULT set to COR_E_PATHTOOLONG.

PathTooLongException(String, Exception)

Initialisiert eine neue Instanz der PathTooLongException-Klasse mit einer angegebenen Fehlermeldung und einem Verweis auf die innere Ausnahme, die diese Ausnahme ausgelöst hat.Initializes a new instance of the PathTooLongException class with a specified error message and a reference to the inner exception that is the cause of this exception.

Eigenschaften

Data

Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen über die Ausnahme bereitstellen.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Geerbt von Exception)
HelpLink

Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest.Gets or sets a link to the help file associated with this exception.

(Geerbt von Exception)
HResult

Ruft HRESULT ab oder legt HRESULT fest. Dies ist ein codierter Wert, der einer bestimmten Ausnahme zugeordnet ist.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Geerbt von Exception)
InnerException

Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursacht hat.Gets the Exception instance that caused the current exception.

(Geerbt von Exception)
Message

Ruft eine Meldung ab, die die aktuelle Ausnahme beschreibt.Gets a message that describes the current exception.

(Geerbt von Exception)
Source

Gibt den Namen der Anwendung oder des Objekts zurück, die bzw. das den Fehler verursacht hat, oder legt diesen fest.Gets or sets the name of the application or the object that causes the error.

(Geerbt von Exception)
StackTrace

Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab.Gets a string representation of the immediate frames on the call stack.

(Geerbt von Exception)
TargetSite

Ruft die Methode ab, die die aktuelle Ausnahme auslöst.Gets the method that throws the current exception.

(Geerbt von Exception)

Methoden

Equals(Object)

Ermittelt, ob das angegebene Objekt und das aktuelle Objekt gleich sind.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetBaseException()

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die ursprüngliche Ursache für eine oder mehrere nachfolgende Ausnahmen ist.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Geerbt von Exception)
GetHashCode()

Dient als die Standard-HashfunktionServes as the default hash function.

(Geerbt von Object)
GetObjectData(SerializationInfo, StreamingContext)

Legt beim Überschreiben in einer abgeleiteten Klasse die SerializationInfo mit Informationen über die Ausnahme fest.When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Geerbt von Exception)
GetType()

Ruft den Laufzeittyp der aktuellen Instanz ab.Gets the runtime type of the current instance.

(Geerbt von Exception)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
ToString()

Erstellt eine Zeichenfolgendarstellung der aktuellen Ausnahme und gibt diese zurück.Creates and returns a string representation of the current exception.

(Geerbt von Exception)

Ereignisse

SerializeObjectState

Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt mit serialisierten Daten über die Ausnahme zu erstellen.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Geerbt von Exception)

Gilt für:

Siehe auch