PathTooLongException 類別

定義

路徑名稱或完整檔案名稱超過系統定義的最大長度時所擲回的例外狀況。

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
繼承
PathTooLongException
繼承
屬性

備註

在 .NET Framework 4.6.2 之前的 .NET Framework 版本中執行的應用程式,完整路徑不能超過 260 個字元,才能維持與 Windows 操作系統的相容性。 超過 260 個字元的任何路徑都會自動擲回 PathTooLongException。 如需此限制的詳細資訊,請參閱 BCL 小組部落格 中的 .NET 長路徑 專案。

注意

此例外狀況不包含在 適用於 Windows 市集應用程式的 .NET可攜式類別庫中,但是由某些成員擲回。 若要攔截該案例中的例外狀況,請撰寫 catch 可改為處理的 IOException 語句。

從在 .NET Framework 4.6.2 下執行的應用程式開始,.NET Framework 支援超過 260 個 (或 MAX_PATH) 個字元的長路徑。 擲回例外狀況的條件PathTooLongException取決於應用程式目標 .NET Framework 版本:

默認支援以 .NET Framework 4.6.2 和更新版本的 Long 路徑為目標的應用程式。 執行時間會在下列情況下擲回 PathTooLongException

  • 作業系統傳回 COR_E_PATHTOOLONG 或其對應項。

  • 路徑的長度超過 Int16.MaxValue (32,767) 個字元。

默認會停用以 .NET Framework 4.6.1 和舊版 Long 路徑為目標的應用程式,並維護舊版行為。 每當路徑超過 260 個字元時,運行時間就會擲回 PathTooLongException

如果不想要的話,以 .NET Framework 4.6.1 和更早版本為目標但在 .NET Framework 4.6.2 下執行的應用程式可以在應用程式組態檔的運行>時間元素中包含<下列設定,來啟用長路徑支援:

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

PathTooLongException 會使用 HRESULT COR_E_PATHTOOLONG,其值為 0x800700CE。

建構函式

PathTooLongException()

使用其 HRESULT 設定為 COR_E_PATHTOOLONG,初始化 PathTooLongException 類別的新執行個體。

PathTooLongException(SerializationInfo, StreamingContext)
已淘汰.

使用指定的序列化及內容資訊,初始化 PathTooLongException 類別的新執行個體。

PathTooLongException(String)

使用其訊息字串設定為 message 和其 HRESULT 設定為 COR_E_PATHTOOLONG,初始化 PathTooLongException 類別的新執行個體。

PathTooLongException(String, Exception)

使用指定的錯誤訊息以及造成此例外狀況的內部例外狀況的參考,初始化 PathTooLongException 類別的新執行個體。

屬性

Data

取得鍵值組的集合,這些鍵值組會提供關於例外狀況的其他使用者定義資訊。

(繼承來源 Exception)
HelpLink

取得或設定與這個例外狀況相關聯的說明檔連結。

(繼承來源 Exception)
HResult

取得或設定 HRESULT,它是指派給特定例外狀況的編碼數值。

(繼承來源 Exception)
InnerException

取得造成目前例外狀況的 Exception 執行個體。

(繼承來源 Exception)
Message

取得描述目前例外狀況的訊息。

(繼承來源 Exception)
Source

取得或設定造成錯誤的應用程式或物件的名稱。

(繼承來源 Exception)
StackTrace

取得呼叫堆疊上即時運算框架的字串表示。

(繼承來源 Exception)
TargetSite

取得擲回目前例外狀況的方法。

(繼承來源 Exception)

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetBaseException()

在衍生類別中覆寫時,傳回一或多個後續的例外狀況的根本原因 Exception

(繼承來源 Exception)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetObjectData(SerializationInfo, StreamingContext)
已淘汰.

在衍生類別中覆寫時,使用例外狀況的資訊設定 SerializationInfo

(繼承來源 Exception)
GetType()

取得目前執行個體的執行階段類型。

(繼承來源 Exception)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

建立並傳回目前例外狀況的字串表示。

(繼承來源 Exception)

事件

SerializeObjectState
已淘汰.

當例外狀況序列化,以建立包含例外狀況相關序列化資料的例外狀況狀態物件時,就會發生此事件。

(繼承來源 Exception)

適用於

另請參閱