PathTooLongException Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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
- 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 |
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) |