PathTooLongException Klasa

Definicja

Wyjątek zgłaszany, gdy ścieżka lub w pełni kwalifikowana nazwa pliku jest dłuższa niż maksymalna długość zdefiniowana przez system.

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
Dziedziczenie
PathTooLongException
Dziedziczenie
Atrybuty

Uwagi

W aplikacjach działających w wersjach .NET Framework przed .NET Framework 4.6.2 pełne ścieżki nie mogą przekraczać 260 znaków w celu zachowania zgodności z systemami operacyjnymi Windows. Każda ścieżka przekraczająca 260 znaków automatycznie zgłasza wartość PathTooLongException. Aby uzyskać więcej informacji na temat tego ograniczenia, zobacz wpis Długie ścieżki na platformie .NET w blogu zespołu BCL.

Uwaga

Ten wyjątek nie jest uwzględniany na platformie .NET dla aplikacji ze Sklepu Windows ani w przenośnej bibliotece klas, ale jest zgłaszany przez niektórych członków, którzy są. Aby przechwycić wyjątek w tym przypadku, napisz instrukcję catch , która obsługuje IOException zamiast tego.

Począwszy od aplikacji działających w .NET Framework 4.6.2, .NET Framework obsługuje długie ścieżki przekraczające 260 (lub MAX_PATH) znaków. Warunki, w których PathTooLongException zgłaszany jest wyjątek, zależą od wersji .NET Framework przeznaczonej dla aplikacji:

Aplikacje przeznaczone dla .NET Framework 4.6.2 i nowszych wersji Długie ścieżki są domyślnie obsługiwane. Środowisko uruchomieniowe zgłasza PathTooLongException błąd w następujących warunkach:

  • System operacyjny zwraca COR_E_PATHTOOLONG lub jego odpowiednik.

  • Długość ścieżki przekracza Int16.MaxValue (32 767) znaków.

Aplikacje przeznaczone dla .NET Framework 4.6.1 i starszych wersji Długie ścieżki są domyślnie wyłączone, a starsze zachowanie jest zachowywane. Środowisko uruchomieniowe zgłasza wartość za PathTooLongException każdym razem, gdy ścieżka przekracza 260 znaków.

Jeśli jest to niepożądane, aplikacje przeznaczone dla .NET Framework 4.6.1 i starszych, ale działają w ramach .NET Framework 4.6.2, mogą włączyć obsługę długiej ścieżki, włączając następujące ustawienie w <elemecie uruchomieniowym> pliku konfiguracji aplikacji:

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

PathTooLongException używa wartości HRESULT COR_E_PATHTOOLONG, która ma wartość 0x800700CE.

Konstruktory

PathTooLongException()

Inicjuje PathTooLongException nowe wystąpienie klasy z ustawioną wartością HRESULT na COR_E_PATHTOOLONG.

PathTooLongException(SerializationInfo, StreamingContext)
Przestarzałe.

Inicjuje PathTooLongException nowe wystąpienie klasy z określonymi informacjami o serializacji i kontekście.

PathTooLongException(String)

Inicjuje PathTooLongException nowe wystąpienie klasy z ustawionym ciągiem komunikatu na message wartość i ustawioną wartością HRESULT na COR_E_PATHTOOLONG.

PathTooLongException(String, Exception)

Inicjuje nowe wystąpienie PathTooLongException klasy z określonym komunikatem o błędzie i odwołaniem do wewnętrznego wyjątku, który jest przyczyną tego wyjątku.

Właściwości

Data

Pobiera kolekcję par klucz/wartość, które zapewniają dodatkowe informacje zdefiniowane przez użytkownika dotyczące wyjątku.

(Odziedziczone po Exception)
HelpLink

Pobiera lub ustawia link do pliku pomocy skojarzonego z tym wyjątkiem.

(Odziedziczone po Exception)
HResult

Pobiera lub ustawia HRESULT, zakodowaną wartość liczbową przypisaną do określonego wyjątku.

(Odziedziczone po Exception)
InnerException

Exception Pobiera wystąpienie, które spowodowało bieżący wyjątek.

(Odziedziczone po Exception)
Message

Pobiera komunikat opisujący bieżący wyjątek.

(Odziedziczone po Exception)
Source

Pobiera lub ustawia nazwę aplikacji lub obiektu, który powoduje błąd.

(Odziedziczone po Exception)
StackTrace

Pobiera reprezentację ciągu natychmiastowych ramek w stosie wywołań.

(Odziedziczone po Exception)
TargetSite

Pobiera metodę, która zgłasza bieżący wyjątek.

(Odziedziczone po Exception)

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetBaseException()

W przypadku zastąpienia w klasie pochodnej zwraca Exception główną przyczynę co najmniej jednego kolejnego wyjątku.

(Odziedziczone po Exception)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetObjectData(SerializationInfo, StreamingContext)
Przestarzałe.

Po przesłonięciu w klasie pochodnej ustawia SerializationInfo wartość z informacjami o wyjątku.

(Odziedziczone po Exception)
GetType()

Pobiera typ środowiska uruchomieniowego bieżącego wystąpienia.

(Odziedziczone po Exception)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Tworzy i zwraca reprezentację ciągu bieżącego wyjątku.

(Odziedziczone po Exception)

Zdarzenia

SerializeObjectState
Przestarzałe.

Występuje, gdy wyjątek jest serializowany w celu utworzenia obiektu stanu wyjątku zawierającego serializowane dane o wyjątku.

(Odziedziczone po Exception)

Dotyczy

Zobacz też