SafeHandle.IsInvalid 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在衍生類別中覆寫時,取得值以指出這個控制代碼值是否無效。
public:
abstract property bool IsInvalid { bool get(); };
public abstract bool IsInvalid { get; }
member this.IsInvalid : bool
Public MustOverride ReadOnly Property IsInvalid As Boolean
屬性值
如果控制代碼值無效,則為 true
,否則為 false
。
範例
下列範例會檢查檔案是否已順利開啟。 此程式代碼範例是提供給 類別之較大範例的 SafeHandle 一部分。
// Determine if file is opened successfully.
if (_handle.IsInvalid)
throw new Win32Exception(Marshal.GetLastWin32Error(), fileName);
備註
衍生類別必須實 IsInvalid 作 屬性,讓 Common Language Runtime 可以判斷是否需要重大最終處理。 衍生類別必須提供符合其支援之一般句柄類型的實作, (0 或 -1 無效) 。 然後,這些類別可以針對特定的安全句柄類型進一步衍生。
IsClosed不同於屬性,這個屬性會報告物件是否已SafeHandle使用基礎句柄完成,IsInvalid屬性會計算指定的句柄值是否一律視為無效。 因此, IsInvalid 屬性一律會針對任何一個句柄值傳回相同的值。