PathTooLongException Classe

Definição

A exceção gerada quando um caminho ou nome de arquivo totalmente qualificado é maior que o tamanho máximo definido pelo sistema.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.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
Herança
PathTooLongException
Herança
Atributos

Comentários

Se seu código não tiver FileIOPermissionAttribute.PathDiscovery permissão, a mensagem de erro para essa exceção poderá conter somente nomes de arquivo ou diretório em vez de caminhos completos.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.

Em aplicativos que são executados em versões do .NET Framework antes do .NET Framework 4.6.2, os caminhos completos não devem exceder 260 caracteres para manter a compatibilidade com os sistemas operacionais Windows.In apps that run under versions of the .NET Framework prior to the .NET Framework 4.6.2, full paths must not exceed 260 characters to maintain compatibility with Windows operating systems. Qualquer caminho que ultrapasse 260 caracteres gera automaticamente um PathTooLongException .Any path in excess of 260 characters automatically throws a PathTooLongException. Para obter mais informações sobre essa restrição, consulte os caminhos longos de entrada no .net no blog da equipe da BCL.For more information about this restriction, see the entry Long Paths in .NET in the BCL Team blog.

Observação

Essa exceção não está incluída no .net para aplicativos da Windows Store ou na biblioteca de classes portátil, mas é lançada por alguns membros que estão.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. Para capturar a exceção nesse caso, escreva uma catch instrução que manipule um IOException em vez disso.To catch the exception in that case, write a catch statement that handles an IOException instead.

A partir de aplicativos em execução no .NET Framework 4.6.2, o .NET Framework dá suporte a caminhos longos que excedem 260 (ou MAX_PATH ) caracteres.Starting with apps running under the .NET Framework 4.6.2, the .NET Framework supports long paths in excess of 260 (or MAX_PATH) characters. As condições sob as quais uma PathTooLongException exceção são geradas dependem da versão do .NET Framework de destino de um aplicativo:The conditions under which a PathTooLongException exception are thrown depend on the version of the .NET Framework that an app targets:

Aplicativos direcionados para o .NET Framework 4.6.2 e versões posterioresApps that target the .NET Framework 4.6.2 and later versions
Por padrão, há suporte para caminhos longos.Long paths are supported by default. O tempo de execução gera uma PathTooLongException sob as seguintes condições:The runtime throws a PathTooLongException under the following conditions:

  • O sistema operacional retorna COR_E_PATHTOOLONG ou seu equivalente.The operating system returns COR_E_PATHTOOLONG or its equivalent.

  • O comprimento do caminho excede Int16.MaxValue (32.767) caracteres.The length of the path exceeds Int16.MaxValue (32,767) characters.

Aplicativos direcionados para o .NET Framework 4.6.1 e versões anterioresApps that target the .NET Framework 4.6.1 and earlier versions
Os caminhos longos são desabilitados por padrão e o comportamento herdado é mantido.Long paths are disabled by default, and the legacy behavior is maintained. O tempo de execução gera um PathTooLongException sempre que um caminho excede 260 caracteres.The runtime throws a PathTooLongException whenever a path exceeds 260 characters.

Se isso não for desejável, os aplicativos que se destinam ao .NET Framework 4.6.1 e anteriores, mas executados no .NET Framework 4.6.2 podem habilitar o suporte a caminho longo, incluindo a seguinte configuração no <runtime> elemento do arquivo de configuração do aplicativo:If this is undesirable, apps that target the .NET Framework 4.6.1 and earlier but run under the .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 usa o HRESULT COR_E_PATHTOOLONG , que tem o valor 0x800700CE.PathTooLongException uses the HRESULT COR_E_PATHTOOLONG, which has the value 0x800700CE.

Construtores

PathTooLongException()

Inicializa uma nova instância da classe PathTooLongException com o HRESULT definido como COR_E_PATHTOOLONG.Initializes a new instance of the PathTooLongException class with its HRESULT set to COR_E_PATHTOOLONG.

PathTooLongException(SerializationInfo, StreamingContext)

Inicializa uma nova instância da classe PathTooLongException com as informações de serialização e contexto especificadas.Initializes a new instance of the PathTooLongException class with the specified serialization and context information.

PathTooLongException(String)

Inicializa uma nova instância da classe PathTooLongException com sua cadeia de caracteres de mensagem definida como message e seu HRESULT definido como COR_E_PATHTOOLONG.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)

Inicializa uma nova instância da classe PathTooLongException com uma mensagem de erro especificada e uma referência à exceção interna que é a causa da exceção.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.

Propriedades

Data

Obtém uma coleção de pares de chave/valor que fornecem informações definidas pelo usuário adicionais sobre a exceção.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Herdado de Exception)
HelpLink

Obtém ou define um link para o arquivo de ajuda associado a essa exceção.Gets or sets a link to the help file associated with this exception.

(Herdado de Exception)
HResult

Obtém ou define HRESULT, um valor numérico codificado que é atribuído a uma exceção específica.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Herdado de Exception)
InnerException

Obtém a instância Exception que causou a exceção atual.Gets the Exception instance that caused the current exception.

(Herdado de Exception)
Message

Obtém uma mensagem que descreve a exceção atual.Gets a message that describes the current exception.

(Herdado de Exception)
Source

Obtém ou define o nome do aplicativo ou objeto que causa o erro.Gets or sets the name of the application or the object that causes the error.

(Herdado de Exception)
StackTrace

Obtém uma representação de cadeia de caracteres de quadros imediatos na pilha de chamadas.Gets a string representation of the immediate frames on the call stack.

(Herdado de Exception)
TargetSite

Obtém o método que gerou a exceção atual.Gets the method that throws the current exception.

(Herdado de Exception)

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetBaseException()

Quando substituído em uma classe derivada, retorna a Exception que é a causa raiz de uma ou mais exceções subsequentes.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Herdado de Exception)
GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetObjectData(SerializationInfo, StreamingContext)

Quando substituído em uma classe derivada, define o SerializationInfo com informações sobre a exceção.When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Herdado de Exception)
GetType()

Obtém o tipo de runtime da instância atual.Gets the runtime type of the current instance.

(Herdado de Exception)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
ToString()

Cria e retorna uma representação de cadeia de caracteres da exceção atual.Creates and returns a string representation of the current exception.

(Herdado de Exception)

Eventos

SerializeObjectState

Ocorre quando uma exceção é serializada para criar um objeto de estado de exceção que contém dados serializados sobre a exceção.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Herdado de Exception)

Aplica-se a

Confira também