PathTooLongException Class

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
public class PathTooLongException : System.IO.IOException
[System.Serializable]
public 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
Inheritance
PathTooLongException
Inheritance
Attributes

Remarks

Wenn Ihr Code nicht über FileIOPermissionAttribute.PathDiscovery 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 vor dem .NET Framework 4.6.2.NET Framework 4.6.2mit Versionen der .NET Framework ausgefü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.

Note

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 Sie stattdessen eine catch-Anweisung, die eine IOException behandelt.To catch the exception in that case, write a catch statement that handles an IOException instead.

Beginnend mit apps, die unter der .NET Framework 4.6.2.NET Framework 4.6.2ausgeführt werden, unterstützt die .NET Framework lange Pfade, die über 260 (oder MAX_PATH) Zeichen hinausgehen.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 eine PathTooLongException Ausnahme ausgelöst wird, sind von der Version der .NET Framework, auf die eine APP abzielt, abhängig:The conditions under which a PathTooLongException exception are thrown depend on the version of the .NET Framework that an app targets:

Apps, die auf .NET Framework 4.6.2.NET Framework 4.6.2 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 eine 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 überschreitet Int16.MaxValue (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 ausgerichtet sindApps 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 eine 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, können apps, die auf .NET Framework 4.6.1.NET Framework 4.6.1 und früher abzielen, aber unter dem .NET Framework 4.6.2.NET Framework 4.6.2 ausgeführt werden, Unterstützung für langen Pfad aktivieren, indem Sie die folgende Einstellung in das <Runtime-> 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>  
  

PathTooLongException verwendet die HRESULT-COR_E_PATHTOOLONG, die den Wert 0x800700CE aufweist.PathTooLongException uses the HRESULT COR_E_PATHTOOLONG, which has the value 0x800700CE.

Constructors

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 den angegebenen Serialisierungs- und 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 die Ursache für diese Ausnahme bildet.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.

Properties

Data

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

(Inherited from 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.

(Inherited from 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.

(Inherited from Exception)
InnerException

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

(Inherited from Exception)
Message

Ruft eine Meldung ab, mit der die aktuelle Ausnahme beschrieben wird.Gets a message that describes the current exception.

(Inherited from 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.

(Inherited from Exception)
StackTrace

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

(Inherited from Exception)
TargetSite

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

(Inherited from Exception)

Methods

Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetBaseException()

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die Grundursache 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.

(Inherited from Exception)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from 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.

(Inherited from Exception)
GetType()

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

(Inherited from Exception)
MemberwiseClone()

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

(Inherited from Object)
ToString()

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

(Inherited from Exception)

Events

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.

(Inherited from Exception)

Applies to

See also